最新消息:欢迎光临!

js触发onchange事件

js/jquery findever 3987浏览 0评论

一个input,加了onchange事件,但是由js更改input的值时,onchange事件不会触发。

查询了相关资料,onchange必须要在失去焦点事件后才能触发,但是由于js更改值不会触发blur事件,所以change事件也就无法响应。

于是想到用js触发change事件,ie使用fireEvent,chrome/firefox 需要先创建事件对象,再dispatchEvent,比较麻烦

想到一个比较简单的办法,因为onchange其实也是input的一个属性,那么是否可以直接调用来执行呢?

答案是肯定的,直接document.getElementByd(‘myinput’).onchange() 就顺利的执行了change事件响应,但是存在一个问题就是,这种方法是建立在onchange事件写在input标签上的,假如是使用绑定事件函数绑定的,则未可知事件是否会成功执行,有时间再测试一下。

转载请注明:Findever » js触发onchange事件

发表我的评论
取消评论

表情

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址