为了账号安全,请及时绑定邮箱和手机立即绑定

当字段自动归档时触发OnChange?

当字段自动归档时触发OnChange?

holdtom 2019-04-17 22:19:58
我想在我的一个字段(文本框)发生变化时触发一个函数。问题是:该文本框的内容由外部脚本(我无权访问)自动归档,因此onChange监听器不会触发。我已经尝试了很多代码,但这里有两个最接近(我认为?)的结果:这是脚本和字段<script async src="SomeNiceScriptHere.js"></script><input type="text" name="wt_embed_output" id="wt_embed_output" class="wt_embed_output"/>代码1:function myFunction() {     var x = document.getElementById("wt_embed_output").value;     alert("The input value has changed. The new value is: " + x);}     document.getElementById("wt_embed_output").addEventListener("change", myFunction);代码2:$( "#wt_embed_output" ).change(function() {   alert( "Value has been changed" );});目前,当使用脚本更新值时它不起作用,它仅在用户手动更改值时有效。有谁知道这样做的方法?
查看完整描述

2 回答

?
一只萌萌小番薯

TA贡献1795条经验 获得超7个赞

onchange 仅当用户提交对input元素的更改时才会发生,大多数情况下,这是元素失去焦点时。

尝试使用oninput事件;

如果这不起作用,您可以使用适用于所有情况的解决方案:使用设置计时事件 setInterval()


查看完整回答
反对 回复 2019-05-17
?
墨色风雨

TA贡献1853条经验 获得超6个赞

尝试在中添加事件侦听器input

var el = document.getElementById('wt_embed_output');

el.value = 'New Value'

el.dispatchEvent(new Event('oninput'));

  

document.getElementById("wt_embed_output").addEventListener("oninput", myFunction());



function myFunction() {

  var x = document.getElementById("wt_embed_output").value;

  alert("The input value has changed. The new value is: " + x);

}

<input type="text" name="wt_embed_output" id="wt_embed_output" class="wt_embed_output" />


查看完整回答
反对 回复 2019-05-17
  • 2 回答
  • 0 关注
  • 555 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信