ajax请求导致status为canceled的原因
在使用layui的form表單提交以后,請(qǐng)求狀態(tài)總是canceled。后來在form表單的后面添加了一行代碼: return false; 就可以了。
文檔:https://www.layui.com/doc/modules/form.html#onsubmit
錯(cuò)誤:
解決方法:
總結(jié)一下:
1.在URL變更后,會(huì)對(duì)當(dāng)前正在執(zhí)行的ajax進(jìn)求進(jìn)行中止操作。中止后該請(qǐng)求的狀態(tài)碼將為canceled
2.在使用到ajax的時(shí)候,盡量不要在form內(nèi)使用button進(jìn)行提交。表單提交時(shí)用的是自定義的button 調(diào)用ajax 和form表單中的屬性action沖突,解決:去掉form標(biāo)簽只用button或者去掉button只用form。
3.ajax請(qǐng)求默認(rèn)是異步的。把請(qǐng)求改成同步的就行了。解決:設(shè)置如下參數(shù):async: false
4.return false主要是阻止頁面跳轉(zhuǎn),并提交數(shù)據(jù)。如果去掉了,雖然同樣會(huì)進(jìn)行數(shù)據(jù)提交【前提是你有進(jìn)行ajax操作】,但是會(huì)進(jìn)行頁面的刷新。
5.ajax嵌在form里提交,然后form的提交先于ajax,導(dǎo)致ajax的請(qǐng)求沒有成功,狀態(tài)為canceled。解決:在ajax完成后加一個(gè)return false;取消了form提交。
總結(jié)
以上是生活随笔為你收集整理的ajax请求导致status为canceled的原因的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。