目前,在页面上动态生成所有控件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。请指导。
更新:我正在使用selenium RC
答案 0 :(得分: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。