我有一个输入字段,其中的值是使用模式填充的,只需当我单击按钮时,就会出现一个模式,我将在那里选择一些内容,它将填充我的输入字段。
现在我的问题是我想在输入字段的值发生变化时触发一个事件。我已经尝试使用 .change 和 .blur 但它不会触发。
这就是我所尝试的:
$('#myTextbox').on('input', function() {
alert("test");
});
$('#myTextbox').on('change', function() {
alert("test");
});
$('#myTextbox').on('blur', function() {
alert("test");
});
最佳答案
使用事件委托(delegate)
你的问题说你的输入字段是动态生成的。因此,当您的页面准备就绪时,它并不在 DOM 中。
$('body').on('blur', '#myTextbox', function() {
alert("test");
});
仅供引用,您也可以使用change
。
编辑
您可以使用 setTimeout
直到您的文本框填充值为止的一种解决方案。
或
您可以尝试使用DOMAttrModified
$('body').on('DOMAttrModified propertychange paste', '#myTextbox', function() {
alert("test");
});
关于javascript - 检查输入字段的值是否改变,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39993741/