以下是简化方案
$(function() {
$('#btn').on('click', function() {
alert('JQuery')
})
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<input type="button" id='btn' value="Button" onclick="alert('onclick');return false;" />
即使我返回false,也会调用两个警报。如何防止在准备好的事件中写入脚本?
答案 0 :(得分:1)
您需要使用event.stopImmediatePropagation()来阻止调用同一事件的其他侦听器。
$(function() {
$('#btn').on('click', function() {
alert('JQuery')
})
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<input type="button" id='btn' value="Button" onclick="alert('onclick');event.stopImmediatePropagation();" />
答案 1 :(得分:0)
在调用警报功能之前,您应该停止警报(“点击”)。 通常可以使用函数
中使用的event.preventDefault()
来完成
$(function() {
$('#btn').on('click', function() {
alert('JQuery')
})
function alert_first(event){
event.stopPropagation();
}
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<input type="button" id='btn' value="Button" onclick="alert_first();alert('click);"/>