我试着用jQuery模拟select2 (https://select2.github.io/select2/)下拉菜单上的单击,但是单击事件不起作用.
我试过什么
setTimeout(function() {
let rightElement = $('ul.select2-results__options li:nth-child(2)');
if (rightElement.length) {
rightElement.click();
}
}, 3000)元素存在,但单击不触发。我使用这个下拉与官方的"WP职务管理器“为Wordpress过滤作业与类别,我试图预选一个类别在页面加载。
您知道为什么单击事件不触发吗?
发布于 2019-11-18 13:30:23
你试过触发这个活动了吗?
rightElement.trigger('click')下面是一个简单的JavaScript函数,它完成了相同的任务。
triggerEvent(document.'ul.select2-results__options li:nth-child(2)', 'click');
function triggerEvent(el, eventName) {
let event = document.createEvent('HTMLEvents');
event.initEvent(eventName, true, false);
el.dispatchEvent(event);
}发布于 2019-11-18 13:35:50
你的问题是如果条件。html元素的length属性将始终是undefined。这就是为什么你的事件没有被触发。就像这样做:-
setTimeout(function() {
let rightElement = $('ul.select2-results__options li:nth-child(2)');
if (rightElement) {
rightElement.click();
}
}, 3000)https://stackoverflow.com/questions/58915596
复制相似问题