gpt4 book ai didi

javascript - 当我触发一个事件时,它会被触发几次而不是在 jQuery 中输入一次

转载 作者:行者123 更新时间:2023-11-28 04:32:50 26 4
gpt4 key购买 nike

我有以下 HTML 代码,很简单:

<input type="text" />
<input type="hidden" />
<input type="button" value="ok" />

和javascript:

$(function(){
$(":text").on("keyup", function(){
$(":hidden").val($(this).val()).trigger("propertychange");
});

$(":hidden").on("propertychange", function(){
alert($(this).val());
});

$(":button").on("click", function(){
alert($(":hidden").val());
});
});

当我在输入类型 text 中输入内容时,警报会显示几次而不是一次。

如何解决?

参见 jsFiddle . (我用 Firefox 检查过)

最佳答案

你的 :hidden选择器实际上匹配 8 个元素(包括 <head><title><script> )而不是仅匹配隐藏输入,因此 propertyChange每个事件都会引发。

来自 jQuery hidden文档:

In some browsers :hidden includes head, title, script, etc...

试试这个:

$("input:hidden").on("input propertychange", function(){
alert($(this).val());
});

关于javascript - 当我触发一个事件时,它会被触发几次而不是在 jQuery 中输入一次,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28448620/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com