[英]Stop two or more click events from the same click event
我在 jsp 頁面中創建了一個按鈕,我為同一個按鈕編寫了兩個點擊函數,一個帶有標簽,另一個帶有按鈕的類/id。 現在,當我點擊按鈕時,兩個點擊功能都被一個接一個地調用。 我的要求是在第一次點擊 function 中,我想停止第二次點擊 function。我不想刪除第二次點擊 function,因為在某些情況下我需要它來執行。
下面是我正在嘗試的代碼。
<!DOCTYPE html>
<html>
<head>
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js">
</script>
<script>
$(document).ready(function(){
$("input[type=button]").click(function(e){
if(true) {
alert("The paragraph was clicked.");
}
else {
// I want to remove the second click function here
}
});
$("#test").click(function(){
alert("Test paragraph was clicked.");
});
});
</script>
</head>
<body>
<input type = 'button' value='test' id='test'/>
</body>
</html>
您需要使用e.stopImmediatePropagation()
:
$("input[type=button]").click(function(evt){
evt.stopImmediatePropagation();
....
});
這可以防止“橫向冒泡”,因為需要更好的短語,即綁定到同一元素的更多事件回調不會觸發。
你應該試着把
return false;
在else語句中。 因為它停止了事件的傳播,所以它應該做你想做的。
說明:將處理程序附加到元素的事件。 每個元素最多執行一次處理程序。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.