我正在尝试编写一个ruby / selenium脚本来单击表格中的第一个复选框,其中该行不包含// tr / td [6]的某些值(复数)。
表格中的每个tr的结构如下:
<tr>
<td>
<input name = "checkbox" type = "checkbox"></input>
</td>
<td> irrelevant </td>
<td> irrelevant </td>
<td> irrelevant </td>
<td> irrelevant </td>
<td> text I care about </td>
</tr>
我需要表格中第一个tr的复选框的xpath,其中// tr / td [6]不包含“badtext”且不包含“badtext2”
不完全确定如何为此编写xpath。希望我能够很好地解释这一点。
答案 0 :(得分:0)
你需要像这样使用not(表达式)函数
//tr/td[6][not(contains(text(),'badtext'))][not(contains(text(),'badtext2'))]
你的最终xpath就像这样
//tr/td[6][not(contains(text(),'badtext'))][not(contains(text(),'badtext2'))]/../td/input[@name='checkbox']
如果要过滤包括文本在内的任何属性,请使用 含有(。, 'badtext')