0

目前,在页面上,所有控件 ID 都是动态生成的。为了遍历表,我需要获取由 java 脚本生成的行 guid。

例如

<table id="tblPass" bgcolor="#ffffff" editmode="Full" style="width: 100%;">
<tr id="87425hdsfs98-38ad-48df-aa7b-j5jf94hs0l" class="passenger"> 
<td class="dragcolumn Adult pass">
<span class="PersonType"> Adult </span>
</td>

我需要一行的 ID,因此我可以根据该 ID 在列中输入更多信息。因为行的所有信息都是相同的,除了那个 id。知道如何使用 selenium 获取此 ID。请指导。

更新:我正在使用硒 RC

4

1 回答 1

1

您需要先找到元素,例如:

var element = driver.FindElement(By.CssSelector("tr.passenger"));
var rowID = element.GetAttribute("id");
/* RowID would be "87425hdsfs98-38ad-48df-aa7b-j5jf94hs0l" */

你已经编辑说你正在使用 RC,这将是这样的:

var id = selenium.GetAttribute("css=tr.passenger@id");

至于首先识别它,那么您将不得不向外工作。

也就是说,如果您想要tr示例中的父级,请使用此 XPath:

//span[text()='Adult']/ancestor::tr

这会给你元素,然后你查询它的 ID。

于 2013-03-14T11:45:44.893 回答