[英]Unable to change the date using Javascript in Selenium WebDriver
[英]Selenium WebDriver and JavaScript change
我到底如何获得这个Javascript方法
$('#principal_uid').change(function() {
if($(this).val().length > 0){
window.location.href = "/switch.html" + "?uid=" + $(this).val();
} else {
window.location.href = "/index.html";
要与我的Selenium WebDdriver测试一起使用,我在哪里尝试更改该字段的值? 问题是该字段具有默认值,但是Selenium clear()方法无法清除它,尽管测试通过了。
我尝试了一些
WebElement field =driver.findElement(By.id("principal_uid"));
JavascriptExecutor js = (JavascriptExecutor) driver;
js.executeScript("$('#principal_uid').change");
field.clear();
field.sendKeys("newValue"+Keys.RETURN); //CHRASHED THE TEST WITH ERROR COMMUNICATING REMOTE SERVER ERROR
尝试这样的事情:
js.executeScript("$('#principal_uid').val('%s')".format("newValue"));
这将触发“ onchange”事件,并按照代码中的说明将您重定向到页面。
如果未触发事件(尽管应该触发),则可以添加:
js.executeScript("$('#principal_uid').trigger('change')")
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.