張世傑確實沒有什麼軍事才略,他以為此地天險可守,乃遣人入山伐木,造行宮30間,軍屋3000間。當時,宋朝殘存的官民軍士尚有20餘萬,多居於船上。
時任元朝江東宣慰使的漢將張弘範立功心切,他回大都入覲忽必烈,建議說:“張世傑立衛王(趙昺)於海上。閩、廣響應,宜派大軍剿滅,免留後患!”
忽必烈大喜,立命張弘範為蒙古、漢軍都元帥。
陛辭之日,張弘範這個蒙古鷹犬深知韜晦之策,假意推辭主帥之職:“國朝軍製,無漢人典蒙古軍者。臣乃漢人,恐乖節度,願陛下派親信蒙古大臣為帥,與我一道南征。”
忽必烈深知張氏家族二世為蒙古效命,賜錦衣、玉帶以表示對他的絕對信任。
張弘範不要錦衣、玉帶,提出:“奉命遠征,無所事於衣帶也。如能得陛下賜以劍甲,則為臣可仗聖上威靈,令行禁止,無往不克!”
忽必烈聞言壯之,賜張弘範尚方寶劍,表示:“劍,汝之副也。有不用命者,以此處之!”
於是,張弘範薦李恒為自己的副手,至揚州後,發水陸精兵2萬,分道南下。
元軍舟師四至,從海道攻襲漳州、潮州、惠州等地,數敗宋軍,並最終在海豐生擒了文天祥。步軍方麵,元將李恒越過大庾嶺,攻占廣州。
節節失利之餘,張世傑也從潮陽港乘舟入海,退保厓山。
張世傑手下有謀士相勸:“北兵以舟師堵塞海口,則我軍進退失據,不如率先主動出擊,占據海口要地。如果得勝,國之福也;如果不勝,猶可西走。”
張世傑思之良久,自忖宋軍久漂海上,士卒離心,怕主動進攻失敗後,會導致軍卒立刻潰散,便表示不同意。“頻年航海,何時可已!今須與北軍正麵一決勝負!”
於是,他命人焚毀岸上所建數千間簡易房屋,把千餘艘大船牢結成一字陣,沉錨於海,中艫外舳,貫以大索,四周起樓柵如城堞狀,奉宋帝居於舟中,以示必死之態,想和元軍決戰。
此前,宋軍已被阿術縱火燒船而得慘敗,張世傑不汲取教訓,仍舊出此下策,真是天時人事,均使宋朝一步一步踏向覆亡深淵。
當然,張世傑已考慮到既是族弟又是敵將的張弘範火攻的可能性,命人在戰艦外塗滿厚厚一層濕泥。
祥興二年(1279年)正月,元軍統帥張弘範指揮元軍進攻。
厓山以北水淺,元軍怕大舟擱淺,便從厓山以東轉而南駛。他們進入大海後,從海口進薄宋軍水城。同時,元軍出奇兵,斷絕宋軍陸上的汲水之路。
由於宋軍船大陣牢,元水軍衝撞不成,張弘範就派人在木柴上澆上膏油,乘風縱火。甭說,由於張世傑事先派人在各船外層塗泥,元軍火攻並未得手。
猛攻不成功,張弘範派在自己軍中任職的張世傑外甥三入宋營,勸降這位族兄。雖與張弘範同族,又有外甥相勸,張世傑仍舊正氣凜然,對外甥說:“我知道,如果投降,不僅能保命,還能得享富貴榮華。但我已經立下誓願,定以死報答宋恩,此誌難移!”
見張世傑外甥說降不成,張弘範又逼迫被俘的文天祥寫信招降。
文丞相不從,表示:“我不能捍衛父母社稷,卻教人背叛父母社稷,絕對不可能!”
張弘範再三催迫,文天祥便當其麵書寫《過零丁洋詩》示之。張弘範讀到“人生自古誰無死,留取丹心照汗青”之句,不由肅然起敬。
苦笑之餘,他不再強求文天祥寫招降書。
張弘範仍派人多次臨陣向厓山宋軍喊話:“汝陳丞相(宜中)已逃,文丞相(文天祥)已被執,汝等又欲何為!”
厓山士民皆不答,無一人叛降。
招降不成,張弘範命元水軍封鎖海口。由於汲水道絕,張世傑手下的宋軍隻得喝海水,皆困於嘔瀉,戰鬥力劇減。即使如此,張世傑仍率宋軍與元兵日夜大戰不已。