用‘on’函數為一個新增的按鈕綁定了一個事件,這是事件會觸發多次。
<html>
<head>
<meta name="viewport" content="width=device-width" />
<title>碼上飄</title>
<script src="/FrontStyle/js/jquery-1.11.2.min.js" type="text/javascript"></script>
<script>
$(function(){
$('#btn1').click(function () {
$('#btnBind').on('click',function () {
alert(123);
});
});
})
</script>
</head>
<body>
<input id="btn1" type="button" value="確認" />
<input id="btnBind" type="button" value="綁定按鈕" />
</body>
</html>
如上面的代碼,如果你點擊多次'btn1'按鈕,那么就會綁定多少次click事件到'btnBind'按鈕上,on是綁定多少次就觸發多少次的。
解決方案:
1.要想它只綁定一次,可以先'off'解綁然后再'on'。
$('#btnBind').off('click').on('click',function () {
alert(123);
});
2.執行一次后解綁unbind()
$('#btn1').click(function () {
$('#btnBind').on('click',function () {
alert(123);
});
$("#btnBind").unbind("click")
});
);
