Ajax 更靈活和友好,那表單現在還有什麼優勢和意義呢?

表單能做的,ajax也能做,那現在還有需要使用表單嗎


對於實現來說,當然是實現AJAX稍微麻煩一些啦。AJAX是非同步的請求,局部刷新頁面。如果像登錄這樣的頁面,提交完了以後要完全刷新,這樣子用AJAX的意義就不大了。

另外,AJAX可能會受到同源策略影響,在一些實際應用場景中並不是那麼靈活,而表單的提交位置則基本上沒有限制。比如,登錄時提交的表單,對於像知乎這樣的網站,網站的內容沒有什麼好保密的,而登錄時的身份鑒別信息則是必須保密的,所以知乎所有的頁面地址都是HTTP協議不加密傳輸,而提交登錄表單的位置是 https: //http://www.zhihu.com/login。如果是使用AJAX,登錄頁面 http: //http://www.zhihu.com/ 和 表單接收位置 https: //http://www.zhihu.com/login 因為協議名不同而被判定為不同源,所以請求無法發送。雖然非要實現一個這樣子的通過HTTP授權頭之類的方法實現跨域訪問,但是這樣子顯然比直接提交一個表單麻煩多了。

手裡拿著鎚子,如果看什麼都是釘子,是容易砸到手的。


看場景,需要局部刷新的時候使用。


說實話,我很少使用ajax。。。我認為表單更方便使用,更容易實現,更符合用戶習慣。

不推薦為了ajax而ajax


·

技術從來只談「適合」,不談「好壞」。

目前 Ajax 在技術上並不能取代 form,不信的話,你用 Ajax 上傳個文件試試?

Ajax 主要用在動態更新數據,例如:在頁面上展現一張人員信息表格,你可以在增刪改的時候對每行進行動態更新操作,而不必刷新整個頁面。這麼做能夠及時看到結果。

登錄頁面這種,可以完全不用 Ajax 而使用傳統的表單。但為了所謂的「用戶體驗」,當然還是用 Ajax 更合適!

說到底,用哪個比較好還是根據使用場景來決定的,這沒有絕對答案!

.


只想保持一個簡潔入口且該刷新界面的時候


推薦閱讀:

面對JDK的BUG該如何是好?
《黑客帝國》中,NEO尼奧為什麼不教其他人超能力,只教會了他們膽大妄為?
QQ for PC的防撤回
前段時間的思考題的答案v2.0
為什麼手寫對於潦草字體的識別率很高,但是OCR就不行呢?

TAG:前端開發 | JavaScript | 編程 | Ajax | 表單 |