如何使用Selenium中的Javascript获取html选择中的选项列表? 这是一个选择器,比如说{css:'.quantity'} 我尝试driver.findElement({css:'.quantity'})它查找并返回列表框 我看到支持以多种语言(C、Python和Java)返回listbox的内容列表,但我没有看到Javascript的任何内容

如何使用Selenium中的Javascript获取html选择中的选项列表? 这是一个选择器,比如说{css:'.quantity'} 我尝试driver.findElement({css:'.quantity'})它查找并返回列表框 我看到支持以多种语言(C、Python和Java)返回listbox的内容列表,但我没有看到Javascript的任何内容,javascript,selenium,listbox,Javascript,Selenium,Listbox,如果我使用driver.findElement({css:'.quantity'}).getAttribute('innerHTML'),我可以获得列表框的所有选项和值但这有点混乱,因为它只是一个文本块 我希望迭代列表框的内容,以便提取出值供以后使用。我只想将选择器传递给列表框,并获取一个值数组。在Javascript中有什么简单的方法吗?查看github()上的Node/Javascript文档,WebElement对象似乎没有getOptions()方法 我建议只使用findElements

如果我使用
driver.findElement({css:'.quantity'}).getAttribute('innerHTML'),我可以获得列表框的所有选项和值但这有点混乱,因为它只是一个文本块


我希望迭代
列表框的内容
,以便提取出值供以后使用。我只想将选择器传递给
列表框
,并获取一个值数组。在
Javascript
中有什么简单的方法吗?

查看github()上的Node/Javascript文档,WebElement对象似乎没有getOptions()方法

我建议只使用findElements({css:'li'})方法来获取webelement数组中的选项。因此,您的代码可能如下所示

driver.findElement({css: '.quantity'}).findElements({css: 'li'});

我想我要找的Java等价物是getOptions()。你到底在找什么?您使用的是哪种语言装订艺术?Java/Python/C#/Ruby?我正在使用Selenium的Javascript/Node绑定。我正在尝试获取列表框的内容。
LI
s不是HTML
SELECT
中的子项,您需要
选项
标记。你也可以将你的两个发现组合成一个CSS选择器,
driver.findelelement({CSS:'.quantity option'})
因此,我尝试了
li
,但本能地知道它不起作用,然后在阅读JeffC的评论之前尝试了
option
。我现在得到一个字符串数组(“0”,“1”,“listbox的长度为1”),但仅此而已。我不能在这些对象上使用innerHTML,即使在查看html时,有一些值。好的,经过一点努力,我能够获得选项的值和innerHTML。谢谢你的帮助。@DebanjanB你读过真正的问题标题了吗?它表示HTML选择。你发布的代码没有证实任何事情。。。它确认找到了具有
quantity
类的任何元素,就这样。如果需要任何其他证据,请阅读OP上面的评论。@NA
innerHTML
获取元素中包含的HTML,但不包括元素本身的HTML。也许您想要
outerHTML
?见vs。