如何使用selenium设置“value”来输入web元素?

时间:2016-02-01 09:36:00

标签: java selenium xpath selenium-webdriver selenium-chromedriver

我的代码中有一个如下所示的元素:

<input id="invoice_supplier_id" name="invoice[supplier_id]" type="hidden" value="">

我想设置它的值,所以我用它的xpath创建了一个web元素:

 val test = driver.findElements(By.xpath("""//*[@id="invoice_supplier_id"]"""))

但是现在我没有看到设置值的选项......

3 个答案:

答案 0 :(得分:22)

使用findElement代替findElements

driver.findElement(By.xpath("//input[@id='invoice_supplier_id'])).sendKeys("your value");

OR

driver.findElement(By.xpath("//input[@id='invoice_supplier_id'])).setAttribute("value", "your value")

OR

driver.findElement(By.id("invoice_supplier_id")).setAttribute("value", "your value");

希望它会对你有所帮助:)。

答案 1 :(得分:6)

driver.findElement(By.id("invoice_supplier_id")).setAttribute("value", "your value");

答案 2 :(得分:3)

正如Shubham Jain所说,这对我很有用:driver.findElement(By.id("invoice_supplier_id")).sendKeys("value"‌​, "new value");