gpt4 book ai didi

javascript - jquery 检测文本框值更改不基于用户输入

转载 作者:行者123 更新时间:2023-12-03 21:37:55 24 4
gpt4 key购买 nike

假设您的页面上有一个简单的文本框和按钮。单击该按钮将更新文本框值:

HTML:

<input type="text" id="myText" val="" />
<input type="button" id="myBtn" value="Change TextBox Value" />

jQuery:

$("#myBtn").on('click', function() {
$("#myText").val('adsf');
})

我想为文本框的更改事件添加一个事件监听器,如下所示:

$('#myText').on('change', function(){
alert('Changed!')
});

当您单击按钮时,该警报不会被触发,但当您手动更改文本框值并将焦点移出文本框时,它会被触发。

我知道您可以将 $("#myText").trigger('change') 添加到按钮的 onclick 事件,但我希望仅通过添加事件监听器来完成此操作文本框。

jsfiddle

谢谢

最佳答案

不支持此类事件。您唯一可以尝试的是设置间隔或超时来检查值是否已更改(使用数据来存储临时值):

var $myText = $("#myText");

$myText.data("value", $myText.val());

setInterval(function() {
var data = $myText.data("value"),
val = $myText.val();

if (data !== val) {
$myText.data("value", val);
alert("changed");
}
}, 100);

演示: http://jsfiddle.net/xZcAr/1/

关于javascript - jquery 检测文本框值更改不基于用户输入,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16048084/

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