javascript - 在 Selenium 中使用 javascript 设置字段值

标签 javascript java selenium

我正在尝试使用 javaScript 在 Selenium + Java 中使用以下代码设置字段值

    JavascriptExecutor jse = (JavascriptExecutor) driver;
    jse.executeScript("document.getElementByXpath(\"//*[@tabindex='17']\").value = '05741180';");

但是,我遇到了这个异常:

org.openqa.selenium.WebDriverException: unknown error: document.getElementsByXpath is not a function

知道我做错了什么吗?

最佳答案

如果您想在xpath'//*[@tabindex='17']'识别的字段中输入'05741180',您可以这样做按以下方式使用 JavaScript:

JavascriptExecutor jse = (JavascriptExecutor) driver;
jse.executeScript("arguments[0].setAttribute('value', arguments[1])", driver.findElement(By.xpath("//*[@tabindex='17']")), "05741180");

如果您还有任何疑问,请告诉我。

关于javascript - 在 Selenium 中使用 javascript 设置字段值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42657777/

相关文章:

javascript - 观察 Vue Observable 中的变化

javascript - 在 Javascript Webpack 项目中过渡到 Typescript(如何导出模块)

java - 通过WIFI从SQL服务器检索数据

javascript - 如何在 executeScript 方法中显示带有变量的 javascript 代码?

javascript - 闭包与命名空间的相关性和使用

Javascript 尝试使用 string.replace() 和正则表达式作为列表值

java - Maven,排除 junit 的 hamcrest 依赖

javascript - 有没有办法从后面调用 .jsp 中的函数?

java - 在 iframe 中找不到 Selenium 元素

javascript - 如何在 Capybara 中对 SVG 元素执行点击事件