当通过JS更新值时,jQuery对更改/输入不起作用
jQuery on change/input not working when updating value via JS
我注意到,当Javascript本身完成更改时,$('#firstId')
的事件不会触发。
为什么会这样?
是否有方法仍然触发事件?
下面是一个例子:
$('#firstId').on('change input paste', function(){
console.log("this is the input event being fired");
});
$('#randomButton').on('click', function(){
$('#firstId').val(Math.floor(Math.random()*2147483647 )+1);
console.log("randomButton being fired");
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<span for="firstId">number: </span>
<input type="number" id="firstId"/>
<p>Or</p>
<button id="randomButton">Get a random number</button><br>
这是因为上面通过处理程序附加的所有事件都是由用户操作触发的,而不是通过代码触发的。您可以在这里使用.trigger()
或.change()
来触发事件:
$('#firstId').val(Math.floor(Math.random()*2147483647 )+1).change();
或
$('#firstId').val(Math.floor(Math.random()*2147483647 )+1).trigger('change');
相关文章:
- 点击按钮输入不起作用
- 鼠标输入在 YUI 的 chrome 中不起作用
- I'我试图在文本区域中进行特定的输入,调用特定的javascript函数,但没有成功;不起作用
- Knockout输入绑定不起作用
- 输入类型范围在angularjs重复内不起作用
- 我的角度形式输入[数字]验证不起作用
- 模态上的输入/注册字段不起作用
- html/jquery输入类型:单选框中的文本不起作用
- jQuery在文本输入点击时不起作用
- 指令中选择输入的双向绑定不起作用
- 按键事件上的简单HTML输入不起作用
- JavaScript onChange 事件侦听器对输入表单不起作用
- 鼠标输入和鼠标离开不起作用
- 专注于输入角度不起作用
- JavaScript - 输入按钮隐藏 - 不起作用
- 使用复选框切换密码输入(由于安全风险而不起作用)
- 当输入字段位于 ng 重复中时,ng 禁用不起作用
- 数组输入不起作用
- Phonegap-输入类型的电子邮件maxlength不起作用
- 输入类型的图像在Internet Explorer中不起作用,但在Chrome和Firefox中起作用