區(qū)別:1、ajax提交是異步進行,網(wǎng)頁不需要刷新,而from表單提交需要刷新;2、ajax必須要用js來實現(xiàn),而Form表單不是必須;3、ajax需要使用程序來對其進行數(shù)據(jù)處理,F(xiàn)orm表單提交是根據(jù)表單結(jié)構(gòu)自動完成,不需要代碼干預。
本教程操作環(huán)境:windows7系統(tǒng)、javascript1.8.5版、Dell G3電腦。
form表單提交與 ajax提交的區(qū)別
1、使用場景:
安全性都一樣,都是發(fā)送的http協(xié)議。安全性與提交文件的業(yè)務處理(格式檢測,防注入)有關(guān),與提交方式無關(guān)。
一般登錄用表單提交,點擊提交觸發(fā)submit事件,一般會 使頁面發(fā)生跳轉(zhuǎn),頁面的跳轉(zhuǎn)等行為的控制往往在后端,后端控制頁面的跳轉(zhuǎn)及數(shù)據(jù)的傳遞;但是某些時候不希望頁面跳轉(zhuǎn),或者說想要將控制權(quán)放在前端,通過js來操作頁面的跳轉(zhuǎn)或數(shù)據(jù)變化,一般這種異步操作,都會使用ajax。
但是Ajax會有個隱藏的問題,即瀏覽器不保存密碼,不符合用戶習慣。理想的方式:建立隱藏的iframe,把form標簽的target指向iframe,然后檢測iframe的狀態(tài)。
2、比較:
(1)ajax在提交、請求、接收時,都是異步進行,網(wǎng)頁不需要刷新,只刷新頁面局部,不關(guān)心也不影響頁面其他部分的內(nèi)容。
Form提交則是新建一個頁面,哪怕是提交給自己本身的頁面,也需要刷新,為了維持頁面用戶對表單的狀態(tài)改變,要在控制器和模板之間傳遞