zoukankan      html  css  js  c++  java
  • js 触发 change 事件

    首先,请各位包涵,我本人对 JS 不是很熟,不知道“触发change事件”和“触发onchange事件”哪个更加合适。有园友知道的麻烦指出,先行谢过。

    起因是这样的,工作上需要在浏览器页面上配置一些信息,同时需要配置的有好几百个。具体是需要在一个 HTML 的input输入框里面输入自己需要的文本,然后保存。而这个input框(猜测,因为页面不是我写的)是绑定了一个onchange事件的,当其中的内容修改后,这个事件会触发,然后保存才会生效。而如果直接用 JS 来给这个input框赋值的话,这个onchange事件是不会触发的。

    于是我上网找了好久,有说用trigger("change")来触发的,但我试了并不行。更无奈的是,网上绝大部分文章都是在说,如果去绑定这个onchange事件,而我要的是触发,而且问了好几个技术群里的朋友,几乎所有人都觉得我是在问如何绑定这个事件,最终写了个示例演示出来才能给他们说清楚。

    今天不得已之下,到 Google 搜索了一下,在 StackOverflow 上找到了方法。原理是要先创建并初始化一个 change 事件,然后再用 dispatchEvent 去触发。代码如下:

    var event = document.createEvent("HTMLEvents");
    event.initEvent("change", true, true);
    document.querySelector("#id").dispatchEvent(event);
    

    参考:
    https://stackoverflow.com/questions/2490825/how-to-trigger-event-in-javascript
    http://www.w3school.com.cn/jsref/event_initevent.asp

  • 相关阅读:
    rocketmq的linux搭建环境
    linux调用本地shell脚本
    第二课
    第一课
    有意思的dos攻击
    信息收集
    url跳转挖掘
    Drozer之android_app分析实战
    缓存中毒
    随便写写
  • 原文地址:https://www.cnblogs.com/wuzhiblog/p/js_dispatchEvent_change.html
Copyright © 2011-2022 走看看