【发布时间】:2012-03-15 13:19:16
【问题描述】:
在 java 类中使用 Selenium WebDriver,我尝试找到该特定元素,然后在输入字段中自动添加所需数量的该元素。
我有一个 HTML 表格,每行指定一种元素类型和一个输入字段,用于将 X 添加到特定行中的元素数量。
<tr>
<td class="non-sortable-table">
<input class="required text" type="text" value="0" name="plate_order{pageFlow.plateorders[0].numberOfPlates}" tabindex="25">
</td>
<td class="non-sortable-table">
<span>20% - White plates</span>
</td>
...
</tr>
为了获得该元素,我在 Java 代码中尝试了以下操作,但没有成功:
WebElement element = (WebElement) js.executeScript("return ${\"document.getElementsByName('plate_order{pageFlow.plateorders[0].numberOfPlates}')\"");
WebElement element = driver.findElement(By.ByName('plate_order{pageFlow.plateorders[0].numberOfPlates}'))
我如何检索该元素以编辑其输入? 当元素名称的一部分是对控制器的引用时是否可能,即 pageFlow?
如果我想检索由 20% 标识的以下元素...。
我尝试使用 xpath 和 cssSelector 来获得那个,但没有成功。 有什么建议吗?
【问题讨论】:
-
"//tr/td[@class='non-sortable-table'][2]/span"
标签: java javascript xpath selenium-rc selenium-webdriver