javascript - 无法检查下拉菜单是否包含一些使用 Selenium 的文本

标签 javascript html css selenium selenium-webdriver

我以前做过并且它有效,但现在下拉 html/css id 有点不同,我无法让它正常工作。

这是下拉代码的层次结构,我标记了例如我想知道的文本是否存在:

image

所以我所做的是为打开下拉菜单的按钮设置一个 web 元素,获取它的文本并检查它是否包含一些文本:

val myDropDown = driver.findElement(By.xpath("""//*[@id="no-jcf"]/div[2]/div[3]/form/div[18]/div[2]/div[2]/ol/button"""))
val ans = myDropDown.getText().contains("Copy of Invoice")

它不工作。我得到一个错误的答案。

最佳答案

如果你想检查一个特定的选项,那么你可以试试这个:

WebElement myDropDown=driver.findElement(By.xpath("//button[contains(@class,'dropdown-toggle')]//li[@data-value='8']//span[1]"));
String dropdownText=myDropDown.getText();
if(dropdownText.equalsIgnoreCase("Copy of Invoice"))
{
//...
}

关于javascript - 无法检查下拉菜单是否包含一些使用 Selenium 的文本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35391968/

相关文章:

javascript - RxJS - 检测长鼠标按下

html - 字体显示为粗体

Javascript根据输入标签提交表单

html - 试图让 div 在父 div 中保持对齐

javascript - 左右填充不适用于菜单上的链接

Javascript 石头剪刀布

javascript - 如何使 3 列两列并排一个中间我的 div 把所有东西都放在左边

javascript - Google Charts 注释时间线提示未出现

android - 使用 Simperium 从 Android 更新 HTML 列表

javascript - 考虑到 BEM,使用 'classnames' 的可扩展 React CSS