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


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

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

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

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

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

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

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

$("#queryUser").off("click"); //如果該對象存在其他click事件先解綁事件

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


免責聲明!

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



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