为什么jQuery.on()不';不处理javascript动态创建的事件?
我有一个普通的Javascript系统,在下拉列表中触发为什么jQuery.on()不';不处理javascript动态创建的事件?,javascript,jquery,dom-events,Javascript,Jquery,Dom Events,我有一个普通的Javascript系统,在下拉列表中触发更改事件: const event = new Event('change'); select.dispatchEvent(event); 它可以通过addEventListener()或$('select')完美地处理事件 但如果将.on()函数设置为目标动态元素,则该函数不起作用: $(document).on('change', 'select', function() { console.log('should'); })
更改事件:
const event = new Event('change');
select.dispatchEvent(event);
它可以通过addEventListener()
或$('select')完美地处理事件
但如果将.on()
函数设置为目标动态元素,则该函数不起作用:
$(document).on('change', 'select', function() {
console.log('should');
});
我缺少什么?默认情况下,构造的事件不会在DOM树上冒泡。如果您想要,您需要明确要求:
const event = new Event("change", { bubbles: true });
如果事件没有冒泡,它将无法达到文档
级别,并且不会调用委托处理程序。这就是我所缺少的。谢谢你,尖头!