我能够检测输入在键入、粘贴等时是否更改值,但是如果值从另一个脚本动态更改,我将无法检测到它:
假设我有一个输入
<input id="testInput" value="Type Here" />
如果通过输入值发生变化,我想提醒“已更改”
$('#testInput').on('input', function(){
alert("changed");
});
这可行,但如果值从另一个脚本动态更改,我无法触发警报:
$('#testInput').val("Dynamic Value"); //This doesn't show the alert
我希望能够通过键入、粘贴或从脚本或操作动态检测值是否发生变化。
.val()
在许多不同的地方执行,因此将整个代码更改为 .val() 等其他内容.trigger("change")
不是一个选项。
这是一个带有更好示例的 jsfiddle:
最佳答案
只需触发事件即可!
$('#testInput').val("Dynamic Value").trigger("input");
关于javascript - 如何使用 JS/Jquery 检测输入值何时动态变化,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51528095/