如何解決ajax重復提交的問題


如下一段代碼:

先忽略我沒引jquery.js的問題,這是一個案例。

當我們點擊提交時,控制台輸出兩次e,在network里查看,可以看到我們的ajax傳輸了兩次,造成了數據重復提交。

一種解釋為button的type為submit,和type='button'不同,submit有自己的默認行為,也就是說當你點擊了他之后,他就會進行提交,從而導致重復提交,而type=button需要進行

ajax的跳轉才能實現提交功能。所以解決辦法,就是將submit換成button。

但是我是jquery創建的button,type=button,提交時點擊一次提交一次,第二次提交兩次,第三次提交三次,網上解釋是append的導致的,我沒用append,找不到其他原因。

后來找到jquery的一個命令,

即,每次點擊button時,都清除該元素的所有綁定事件。然后就好了,代碼如下:

有一些確定按鈕,比如當我們點擊的時候,只需要他執行一次命令,但是當你雙擊,或者更快速的的點擊的時候,他會重復執行一個命令,比如,重復請求ajax,比如定時器,當你沒有清除的時候,他會重復定時,導致你的定時器已經紊亂了。jquery中,有一個one事件,請看他的描述:


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM