Jquery中on綁定事件 點擊一次 執行屢次 的解決辦法

舉個例子,在同一個頁面有下拉選擇框對象

<select class="mySelect">
<option value="user">按用戶分析</option>
<option value="dept">按單位分析</option>
<option value="role">按角色分析</option>
</select>事件

當選擇用戶分析時,一組用戶查詢條件展現出來,queryUser查詢按鈕顯示,並綁定查詢方法countByUser(),$("#queryUser").on("click",countByUser);io

當選擇單位分析時,一組單位查詢條件展現出來,queryDept查詢按鈕顯示,並綁定查詢方法countByDept(),$("#queryDept").on("click",countByDept);class

當選擇角色分析時,一組角色查詢條件展現出來,queryRole查詢按鈕顯示,並綁定查詢方法countByRole(),$("#queryRole").on("click",countByRole);cli

先選擇按用戶分析,此時queryUser按鈕綁定了一次click事件,再選擇按單位分析,再選擇按用戶分析,此時queryUser按鈕又綁定了一次click事件,點擊查詢按鈕會調用兩次countByUser()方法。select

解決辦法是在綁定click以前先解綁方法,或者調用完方法以後解綁。方法

$("#queryUser").off("click"); //若是該對象存在其餘click事件先解綁事件查詢

$("#queryUser").on("click",countByUser); //綁定事件query

相關文章
相關標籤/搜索