javascript - 如何使用 js 和 selenium 检查 Select Web 元素是否包含某些文本?

标签 javascript java scala selenium selenium-webdriver

我是一个隐藏的下拉 Web 元素,当前未隐藏并按值进行选择,如下所示:

val js: JavascriptExecutor = driver.asInstanceOf[JavascriptExecutor]
js.executeScript("$('.select-upload_company_id>.center').html(" + someInt + ")") //visible one
js.executeScript("$('#company_id option[value=\"" + someInt + "\"]').eq(1).attr('selected','selected')") 

现在,这工作得很好,但现在我想通过可见文本选择元素......

所以我尝试做类似的事情:

val js: JavascriptExecutor = driver.asInstanceOf[JavascriptExecutor]
js.executeScript("$('.select-upload_company_id>.center').html(" + "Test" + ")") //visible one
js.executeScript("$('#company_id option[contains=\"" + "Test" + "\"]').eq(1).attr('selected','selected')")

但它不起作用......有人知道为什么它不起作用或者有更好的和更简单的解决方案吗?我正在使用 scala 进行编程,但 java 解决方案也可以。

谢谢!

最佳答案

jQuery contains 选择器的写法应类似于 #company_id option:contains("Test")

所以:

$('#company_id option:contains("Test")').eq(1)...

代码笔:http://codepen.io/anon/pen/dGqXzG

关于javascript - 如何使用 js 和 selenium 检查 Select Web 元素是否包含某些文本?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35183197/

相关文章:

javascript - jQuery 验证 - 隐藏错误消息并且不提交表单

java - 通过 Tibco JMS 发送可序列化对象会引发反序列化失败错误

scala - joda 时间 ISO 日期时间格式

scala - 是否可以通过编程方式更改Scala REPL的提示?

scala - 从结构元素的嵌套数组创建一个 Spark DataFrame?

javascript - 如何获取 chart.js 图表以在 Node/React Web 应用程序中显示数据?

javascript - PhoneGap onDeviceReady 未触发

java - logstash-logback-encoder 在多行中显示堆栈跟踪

java - 使用 MARF 训练说话人识别时未找到说话人

javascript - CSS有没有可能逃脱shadow dom(Polymer)?