如何将“int”值发送到from,即阻塞任何字符串

时间:2015-07-23 13:46:49

标签: java selenium selenium-webdriver

我有下一个问题:当我尝试使用以下方式发送值(电话号码)时

 elem.sendKeys("6547898"); 

我不能这样做,因为表单只能用整数。 我知道我可以使用:

 robot.keyPress(KeyEvent.VK_9); 

(我已经使用它并且它有效)但可能有人知道如何不使用Robot()吗? Robot不舒服。

谢谢!

2 个答案:

答案 0 :(得分:1)

假设elemWebElement,您可以使用:

import org.openqa.selenium.Keys;

...

elem.sendKey(Keys.NUMPAD9);

修改

由于这不起作用,因此Robot的替代方法是通过WebDriver实例运行JavaScript代码段,将字段值更改为您想要的值。它会是这样的:

((JavascriptExecutor) driver).executeScript("$('#phone').prop('value', '+3806547898');");

答案 1 :(得分:0)

sendKeys()不接受Integer作为参数,因此您需要将整数转换为字符串,然后在sendKeys命令中使用它。

实施例

int intPeriod= (int)Double.parseDouble(period);
element.sendKeys(String.valueOf(intPeriod));