触发内容事件

我编写了一个Chrome扩展程序,自动填写一些注册表单。 有些选择字段需要在“ 更改 ”事件上触发才能启动一些Ajax调用。

首先,我使用JQuery attr或val来更改select字段的值,并且使用.trigger来调用“change”事件,但最后一个不起作用。

例:

我想选择包含单词“London”的选项并调用change元素,以启动一些在“change”事件上有一些监听器的本地代码的操作

jQuery("#SelectElement option:contains('London')").attr("selected", "selected"); 
jQuery("#SelectElement").trigger("change"); <--- not works

我也试过:

jQuery("#SelectElement option:containt('London')").attr("selected", "selected").change();

但是如果我在控制台上试用这个代码,它就可以工作。

建议?


就我而言,

var event = new CustomEvent('change');

不工作。

我必须像这样初始化事件:

var evt = document.createEvent("HTMLEvents");
evt.initEvent("keyup", true, true);

第一个arg'气泡'应该是真实的,所以事件应该通过事件链起泡。

event.initEvent(type, bubbles, cancelable);

来源:https://developer.mozilla.org/en-US/docs/Web/API/Event/initEvent


我有同样的问题,据我所知,这是因为框架事件监听器。 你不能通过jquery从你的代码中触发! 但解决方案以这种方式触发事件:

$(selector)[0].dispatchEvent(new Event("eventName"))

链接地址: http://www.djcxy.com/p/22113.html

上一篇: Trigger events on content

下一篇: Cacheable SSL page found, Bundling and Minification