如果引用或轉貼,麻煩註明出處與本網誌連結,否則視為侵權。

2019年9月5日

HTML表單要在按下送出按鈕後,使用Ajax呼叫後台程式檢查表單內容的注意事項

作者: Fred F.M. Wang (FW知識瑣記) 日期:2019-09-05

javascript除了除錯不容易外, 在Ajax上也有一些奇怪的地方,下面是我爬過一些國外的技術文章與
自己多次錯誤嘗試的結果

如果您HTML表單要在按下送出按鈕後,先使用Ajax呼叫後台程式檢查表單內容後, 再實際送到後台
。有下面四點注意事項 : 

1. 使用GET方式傳遞參數時, 部分參數內容無法傳遞, 例如參數值有"XXX" 時就無法傳遞, 所以要改用POST
2. 表單送出前, 使用Ajax呼叫後台程式檢查表單內容時, 要先用event.preventDefault()取消表單送出Submit動作, 否則不會正常呼叫後台程式。
3. 檢查完畢,檢查無誤時,使用this.unbind('submit'); this.submit(); 先解除(unbind)表單的事件處理程序, 也就是submit()送出時
不會再執行自行撰寫的$(“form”).submit(...), 而是直接送出表單, 如果不寫unbind, 會重複執行這
段Ajax程式。
4. 如果submit, $.ajax(...); 後到function結束前如果還有程式碼,完全不會執行。

範例程式碼如下 : 


沒有留言:

張貼留言

歡迎提供意見, 謝謝 (註 : 留言經過版主審核通過才會發布)