[英]Jquery. click event doesn't work after change event?
有這個示例代碼:
<input type="text" id="changeid">
<a href="#" id="clickb">click</a>
<script>
$('#clickb').on("click", function(event){
alert(1);
return false;
});
$('#changeid').on("change", function(event){
alert(2);
return false;
});
</script>
將某些內容放入文本字段並立即單擊鏈接時,僅觸發onchange事件,但不會觸發鏈接單擊事件。 這是為什么? 似乎更改事件阻止了click事件?
它被alert
阻止。 將alert
更改為console.log
您會發現兩個事件都被觸發。
$('#clickb').on("click", function(event){
console.log(1);
return false;
});
$('#changeid').on("change", function(event){
console.log(2);
return false;
});
編輯輸入然后單擊鏈接時,內部會發生以下情況
blur
事件 change
事件,因為它引發blur
並且值已更改 change
事件回調會打開alert(2)
click
。 解決方案不是使用alert
(如xdazz提議的那樣)。
用這個
$("#changeid").live('change', function () ...
onchange事件僅在元素模糊后觸發。 因此,當您鍵入一些文本並首先單擊鏈接時,元素在文本字段上模糊。 使用onkeyup事件處理更改事件的最佳方法是跟蹤對文本字段所做的更改。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.