0

我正在尝试针对表格条目选择复选框。但是每当表中有新条目时,xpath 就会不断变化(tr 增加或减少)。附件是源代码和 xpath,因为我无法输入它。你能告诉我如何选择条目吗

xpath = //*[@id='main']/form/fieldset[2]/table[2]/tbody/tr[2]/td[2]/div/table/tbody/tr[5]/td[2]

资源 :

<tr>
<td style="height: 20px">
<input type="checkbox" value="65" name="SelectedServersIds"/>
</td>
<td title="10.78.59.224 / 10.78.59.224">10.78.59.224 / 10.78.59.224</td>
<td title="N/A">N/A</td>
<td title="Linux SuSE EL Server 10 x64">Linux SuSE EL Server 10 x64</td>
<td title="Local DB">Local DB</td>
</tr>
<tr>
<td style="height: 20px">
<input type="checkbox" value="73" name="SelectedServersIds"/>
</td>
<td title="10.78.59.24 / 10.78.59.24">10.78.59.24 / 10.78.59.24</td>
<td title="N/A">N/A</td>
<td title="Win 2008 Server x64">Win 2008 Server x64</td>
<td title="Local DB">Local DB</td>
</tr>
4

2 回答 2

0

使用以下代码。仅更改特定行的文本(Linux SuSE EL Server 10 x64)。

//tr[td[text() = 'Linux SuSE EL Server 10 x64']]/descendant::input[@type = 'checkbox']
于 2013-08-14T05:03:04.280 回答
0

您拥有的 xpath 看起来太具体了,每当源 html 更改时,您的 xpath 很可能会中断。您可以使用以下方法来避免此问题:

xpath = descendant::input[contains(@name, 'SelectedServersIds')]

您可以相应地更改标签: ' input '、属性: ' @name ' 和属性值: ' SelectedServersIds '。希望这可以帮助。

于 2013-08-16T10:39:31.290 回答