場景:
點擊按鈕後,使用ajax請求在服務端做一個比較耗時的操作。
如果使用同步ajax
如果在IE環境(IE8)下,心急的用戶連續點擊3此後,在第一次點擊事件處理完畢後,要接著會處理地二、三次單擊,所以總共會向服務端發送3此請求;
而在FF(3.6.X)下, 如果用戶連續點擊3次,如果後兩次在第一次點擊還沒處理完就發生, 則第一次處理完後,不會處理第二、三次點擊
所以對於按鈕使用ajax請求,涉及到如更新/刪除數據等業務操作時,要避免用戶多次點擊導致業務的出錯。
一般可行的做法
一是使用token,
二是點擊後就將按鈕disabled,直到請求處理結束再恢復成原來的狀態