我有以下代码。我真正想要做的是在文本字段中输入一个字符串,然后单击回车。然后应显示搜索结果。
但是在'element.sendKeys(Keys.ENTER);'应用程序注销。我查了一下URL。搜索后网址应该相同。但是这里更改。 此代码适用于Chrome和IE。仅限Firefox使用。我检查了元素类型以确认单击。它只是文本框。
public static void pressEnterKey(WebDriver driver,WebElement element){
System.out.println("Current URL1" + driver.getCurrentUrl());
WebElementType elementType = WebElementHelper.findElementType(element);
System.out.println("Element Type = " + elementType);
element.sendKeys(Keys.ENTER);
System.out.println("Current URL2" + driver.getCurrentUrl());
}
答案 0 :(得分:1)
有一个关于此问题的错误报告,它似乎特定于.NET和FireFox。
见这里: https://code.google.com/p/selenium/issues/detail?id=2079
结果是使用
element.sendKeys(Keys.Return);
答案 1 :(得分:0)
如果唯一的目的是点击“Enter”按钮,而不是发送“Enter”键,为什么不点击相应的元素。
只需使用以下任一代码替换上面代码中的代码 element.sendKeys(Keys.ENTER);
:
element.click();
element.submit();
另一方面,as per the definition, sendKeys方法用于输入元素。而且,我很确定你不能输入按钮。 :)