javascript - 如何使用 Javascriptexecutor 在没有 Id 作为定位器的元素中输入文本?

标签 javascript selenium selenium-webdriver webdriver selenium-chromedriver

我想在不通过 SendKeys 输入的文本框中输入文本。我继续使用 Javascriptexecutor 输入文本并成功。现在有一些字段没有可以选择作为定位器的 Id,因此我需要使用 Xpath 定位它们。我想知道我们如何在 Javascriptexecutor 中通过 xpath 定位元素并将值传递给它。

JavascriptExecutor jse = (JavascriptExecutor)driver
jse.executeScript("document.getElementById('value').value='1611 
Dragons';");

我需要一种可以使用它的方法,例如:
document.getElementByXpath("Xpath Here").value='xyz';");

如果之前在某处记录过,请随时指导我找到文档/答案。

最佳答案

试试下面的代码,它会解决你的问题:

 WebElement element = driver.findElement(By.xpath("enter the xpath here"));
 JavascriptExecutor jse = (JavascriptExecutor)driver;
 jse.executeScript("arguments[0].value='enter the value here';", element);

关于javascript - 如何使用 Javascriptexecutor 在没有 Id 作为定位器的元素中输入文本?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54673979/

相关文章:

javascript - 字符串拆分并计算出现次数以及

javascript - 日历中不会取消选择上一个选定的日期

python - 使用 Selenium 清除HTML输入框

java - 如何在远程RC服务器上启动Selenium htmlSuite?

java - 无法关闭所有打开的 Windows

javascript - 有没有办法禁用所有firebase日志记录到控制台?

javascript - jQuery/JavaScript : Detecting scroll direction - code structure issue

python - WebDriverException : Message: invalid argument: can't kill an exited process with GeckoDriver, RaspberryPi3 上的 Selenium 和 Python

python - add_experimental_option()缺少1个必需的位置参数:“值”

python - 使用 selenium python 显示等待时间 WebDriverWait