關(guān)于用ajax請求數(shù)據(jù)遇到問題的解決方法
我們在用ajax請求數(shù)據(jù)時,可能會遇到一次點擊多次觸發(fā)的可能。
。ū热缯f:ajax 的 onreadystatechange 事件就會觸發(fā)多次;這是因為 onreadystatechange 是一個事件句柄。
它的值 (state_Change) 是一個函數(shù)的名稱,當(dāng) XMLHttpRequest 對象的狀態(tài)發(fā)生改變時,會觸發(fā)此函數(shù)。
狀態(tài)從 0 (uninitialized) 到 4 (complete) 進(jìn)行變化。僅在狀態(tài)為 4 時,我們才執(zhí)行代碼!
每次XMLHttpRequest 對象的狀態(tài)發(fā)生改變時,會觸發(fā)此函數(shù)。
一共會觸發(fā) 4 次,從 0 到 4。)【PS:當(dāng)然這里引用的例子不完全符合工作時遇到的問題】此時,我們需要一個可以來終止程序的方法。
exit 和abort 都是用來終止程序的函數(shù),下面我們來講一下這兩者的不同之處。
exit會做一些釋放工作:釋放所有的'靜態(tài)的全局的對象,緩存,關(guān)掉所有的I/O通道,然后終止程序。如果有函數(shù)通過atexit來注冊,還會調(diào)用注冊的函數(shù)。不過,如果atexit函數(shù)扔出異常的話,就會直接調(diào)用terminate。
abort:立刻terminate程序,沒有任何清理工作。
以上就是小編為大家?guī)淼年P(guān)于ajax的多次請求問題全部內(nèi)容了,希望大家多多支持~