xpath标识动态值传递

时间:2014-09-25 12:07:15

标签: java selenium xpath

xpath

driver.findElement(By.xpath("//input[@accesskey='9']"));

我们如何传递accesskey属性中的Dynamic值,因为accesskey属性赋值为任意整数

所以我从数据库中获取该id并尝试在accesskey属性中传递该id如何使用java?

Html代码

td style="width: 5%;">
<input type="checkbox" data-bind="attr: { accesskey: Id }" accesskey="6">
</td>
<td style="width: 5%;">
<input type="checkbox" data-bind="attr: { accesskey: Id }" accesskey="7">
</td>

java代码

public void portfolioRenewalSearch(String portfolioId) throws Exception {

        try {
            driver.findElement(By.xpath("//input[@accesskey= portfolioId]"))
                    .click();    
        } catch (AssertionError Ae) {
            Ae.printStackTrace();
        }
    }

但上面的代码显示了异常“selenium.NoSuchElementException”

1 个答案:

答案 0 :(得分:4)

尝试使用以下代码段在运行时传递值

public void portfolioRenewalSearch(String portfolioId) throws Exception {
    try {
        driver.findElement(By.xpath("//input[@accesskey="+portfolioId+"]"))
                .click();
    } catch (AssertionError Ae) {
        Ae.printStackTrace();
    }
}