我正在使用Selenium IDE 1.7.1来选择与发票#405357相对应的复选框.Css似乎允许我继续选择元素,但不能向后移动。 所以这将选择$ 420:
css=td:contains('405357') + td
有关解决方法的任何想法,以便选择复选框?理想情况下,解决方法不会涉及向后或向前,而只会说选择复选框
css=input#paymentsForm_invoiceToPayIds if td:contains('405357')
我更喜欢它在CSS中,但XPath也可以。
谢谢!
<table>
<tbody>
<tr>
<td>
<input id="paymentsForm_invoiceToPayIds" type="checkbox" onclick="calculateInvoices(this)" value="405357" name="invoiceToPayIds">
<input id="__checkbox_paymentsForm_invoiceToPayIds" type="hidden" value="405357" name="__checkbox_invoiceToPayIds">
</td>
<td>405357</td>
</tr>
</tbody>
</table>
答案 0 :(得分:5)
我相信:contains()
也适用于父tr
。试试这个:
css=tr:contains('405357') input[type="checkbox"]
答案 1 :(得分:2)
你不能在真正的CSS中做到这一点,因为真正的CSS没有:contains
。但在XPath中,它很简单://tr[//input[@value="405357"]]//input[@type="checkbox"]
,表示“包含在表格行中的复选框,其中包含值为'405357'的输入字段”。
答案 2 :(得分:0)
//input[@type='checkbox' and @value="405357"]
尝试这个