Man*_*ali 3 javascript java selenium-webdriver
我正在研究selenium webdriver,我需要输入文本而不使用sendkeys方法,因为搜索弹出文本字段是隐藏的.所以我写了下面的代码:
第一种方式:
((JavascriptExecutor)driver).executeScript("document.getElementByXpath('//input[@class='form-control input-small input-inline']').value='TextValue'");
Run Code Online (Sandbox Code Playgroud)
第二种方式:
JavascriptExecutor jse = (JavascriptExecutor) driver;
//jse.executeScript("document.getElementByXpath('//input[@class='form-control input-small input-inline']').value ='abcd';");
Run Code Online (Sandbox Code Playgroud)
第三种方式:
JavascriptExecutor executor = (JavascriptExecutor)driver;
executor.executeScript("arguments[0].type ='search';",chemObject.getSearchPopup());
Run Code Online (Sandbox Code Playgroud)
但是我在标题中提到了语法错误.
你的第一个产生JavaScript错误,原因是混合的单引号,你不会从Java代码中看到,直到执行JS.
最简单的解决方法是替换:
((JavascriptExecutor)driver).executeScript("document.getElementByXpath('//input[@class='form-control input-small input-inline']').value='TextValue'");
有:
((JavascriptExecutor)driver).executeScript("document.getElementByXpath(\"//input[@class='form-control input-small input-inline']\").value='TextValue'");
但是,它仍然不适合您(也不是您的第二次尝试),因为getElementByXpath它不是JavaScript DOM方法.
这里的所有内容都包含在一个非常相似的主题中.
| 归档时间: |
|
| 查看次数: |
9685 次 |
| 最近记录: |