如何在selenium中找到具有相同名称和相同atrributes的元素并插入一些文本

时间:2016-07-09 08:00:09

标签: java selenium

当我们获得多个属性和名称相同的元素,例如具有相同名称和相同类别的多个文本框时。没有办法将这些元素分开。我想为每个文本框插入不同的值。我们如何解决这个问题?请建议,谢谢你

我的WEB图片: enter image description here

我的HTML代码:

<tr class="model-added">


<td class="table_bg1 textTr">上2级代理佣金</td>
            <td>
                <input type="text" name="upRebate[]" value="" maxlength="18">
               <td class="table_bg1 textTr">上3级代理佣金</td>
            <td>
                <input type="text" name="upRebate[]" value="" maxlength="18">

我的代码:

WebDriverWait insert3 = new WebDriverWait(driver, 20);
                        insert3.until(ExpectedConditions.presenceOfElementLocated(By.xpath("//input[@name='upRebate[]'])[position()=2]")))
                                .sendKeys(dealerAmount);

1 个答案:

答案 0 :(得分:1)

解决方案我已经弄明白了:

List<WebElement> li = driver.findElements(By.name(Constant.YHTY_Commission_upRebate));
            li.get(1).sendKeys(dealerAmountList2);
            System.out.println("INSERT 上2级代理佣金 :  " + dealerAmountList2);
            Log.info("INSERT 上2级代理佣金 :  " + dealerAmountList2);
            li.get(2).sendKeys(dealerAmountList3);
            System.out.println("INSERT 上2级代理佣金 :   " + dealerAmountList3);
            Log.info("INSERT 上2级代理佣金 :  " + dealerAmountList3);
            li.get(3).sendKeys(dealerAmountList4);
            System.out.println("INSERT 上2级代理佣金 :  " + dealerAmountList4);
            Log.info("INSERT 上2级代理佣金 :  " + dealerAmountList4);