不使用 jQuery 以编程方式控制 Select2

Posted

技术标签:

【中文标题】不使用 jQuery 以编程方式控制 Select2【英文标题】:Controlling Select2 programmatically without jQuery 【发布时间】:2019-09-03 05:07:21 【问题描述】:

如何以编程方式控制select2 组件没有 jQuery?代码将使用 Selenium 执行,由于我无法访问 jQuery 对象(它与 Webpack 捆绑在一起),因此必须使用纯 JS 来控制它。

我尝试像这样模拟用户点击:

document.getElementById('select2').click()

但它没有打开。我想要实现的是:

    打开选择2 在其搜索框中输入内容以触发 ajax 调用并显示可能的选项 按文本选择选项

【问题讨论】:

【参考方案1】:

您可以尝试以下解决方法:document.querySelector("#example + span > .selection > span"),然后触发点击。小提琴检查:https://jsfiddle.net/zeLbk6s3/2/

你必须触发“点击”正确的元素。

【讨论】:

尝试使用带有document.querySelector('.selection > span').click() 的浏览器控制台打开select2.org/data-sources/ajax 上的Select2,但无法打开组件。

以上是关于不使用 jQuery 以编程方式控制 Select2的主要内容,如果未能解决你的问题,请参考以下文章

使用 jquery 以编程方式选择 select2 选项

以编程方式添加新的 jquery-select2-4 选项并重置搜索字段?

select2:以编程方式控制占位符

如何以编程方式选择jQuery滑块?

使用 jQuery Select2 清除下拉列表

Jquery Bootgrid - 以编程方式更改当前页面