当前位置: 首页 > 知识库问答 >
问题:

Selenium webdriver-根据表值单击复选框

宁鹏程
2023-03-14

我目前正在工作Java/Selenium webdriver自动化。然而,我被困在这个特定的部分,我无法使webdriver点击基于值的复选框。

当我不使用xpath的Axes部分时,它可以工作,但是它只能选中第一个复选框

下面是html的一个片段

<tr class="even">
<td style="width: 20px;">
<input class="chkPopupCod" type="checkbox">codData=Object { id=101914, codId=101906, label="AAA", more...}
</td>
<td class="" align="left">AAA</td>
</tr>
<tr class="odd">
<td style="width: 20px;">
<input class="chkPopupCod" type="checkbox" style="background-color: rgb(255, 255, 255);">codData=Object { id=101918, codId=101907, label="BBB", more...}
</td>
<td class="" align="left" style="background-color: transparent;">BBB</td>
</tr>
<tr class="even">
<td style="width: 20px;">
<input class="chkPopupCod" type="checkbox">codData=Object { id=101922, codId=101908,   label="CCC", more...}
</td>
<td class="" align="left">CCC</td>
</tr>

共有1个答案

蒋浩
2023-03-14

您在XPath中具有正确的思想。只要把它翻过来:

//td[contains(text(),'BBB')]/preceding::td/input[@class='chkPopupCod']

如中所示,首先获取包含文本元素。在那之后穿过树。

 类似资料:
  • 我想选择以下基于“好市多批发公司”值的复选框: 我尝试了以下代码: 但是得到以下例外: 无效的选择器:无法找到一个元素与xpath表达式//td[span[text()='Costco批发公司']]/前驱兄弟姐妹::td/输入[@name='chkbox',因为以下错误'//td[span[text()='好市多批发公司']]/前面的兄弟姐妹::td/输入[@name='chkbox" 您能帮助编

  • 我正在使用它来自动化一个GWT应用程序。有一个包含以下列的表:checkbox,userID,Username,Fname,LName,email。 我得到的错误是:selenium.common.exceptions.invalidselectoreXception:消息:无效选择器:无法找到具有xpath表达式//tr[td[contains(text()='agency_group_0_ag

  • 问题内容: 我必须选中以下HTML代码段中包含的复选框。该复选框包含在输入标签中 我已经尝试过各种方法来识别并选择它,但是它从来都不可见。我已将复选框标签的文本打印到控制台,因此无法理解为什么复选框本身不可见。以下Java代码成功打印了标签,但未能单击复选框,并抛出错误元素不可见。 我尝试了不同的等待,但均未成功。 任何人都可以在这里向我指出正确的方向 谢谢。 问题答案: 尝试使用javascri

  • 我目前有以下情况: 我有多个复选框,一旦单击任何复选框,它的值将添加到数组中。如果未选中该复选框,则需要再次将该项从数组中删除。 以下操作有效,并将它们添加到我的中。但当再次选中该复选框时,它不会被删除。当然,我可以使用

  • 我正在使用一个jQuery插件:bootstrap-select.js我的超文本标记语言是选择(多个)- 示例:用户选择项4=控制台。记录项目4。然后,用户还选择项目2=控制台。记录项目2。目前我得到了第4项,第2项。。。它们总是在一个数组中,而不是单个的。 我的最终目标是根据用户选择的内容在页面上显示和隐藏div。将有多个选择选项字段。 HTML代码: JS代码: 当前输出: 插件站点:引导选择

  • 假设以下HTML下拉列表: 我正在寻找javascript获得所需的选项文本的基础上,它的值。 比如如果问value=“2”上的文本是什么?答案:“价值2” 我尝试了下面的jquery代码: null null