如何将 "int" 值发送到 from,阻止任何字符串 sing
How to send "int" value in to from, that blocking any string sing
我遇到下一个问题:当我尝试使用以下方式发送值(phone 数字)时:
elem.sendKeys("6547898");
我做不到,因为表单只能处理整数。
我知道我可以使用:
robot.keyPress(KeyEvent.VK_9);
(我用过它并且有效)但可能有人知道如何在不使用 Robot()
的情况下做到这一点? Robot
不舒服
谢谢!
假设elem
是WebElement
,你可以使用:
import org.openqa.selenium.Keys;
...
elem.sendKey(Keys.NUMPAD9);
编辑
由于这不起作用,机器人的替代方法是 运行 通过您的 WebDriver
实例的 JavaScript 片段,以将字段的值更改为您想要的值。它会是这样的:
((JavascriptExecutor) driver).executeScript("$('#phone').prop('value', '+3806547898');");
sendKeys() 不接受整数作为参数,因此您需要将整数转换为字符串,然后在 sendKeys 命令中使用它。
示例
int intPeriod= (int)Double.parseDouble(period);
element.sendKeys(String.valueOf(intPeriod));
我遇到下一个问题:当我尝试使用以下方式发送值(phone 数字)时:
elem.sendKeys("6547898");
我做不到,因为表单只能处理整数。 我知道我可以使用:
robot.keyPress(KeyEvent.VK_9);
(我用过它并且有效)但可能有人知道如何在不使用 Robot()
的情况下做到这一点? Robot
不舒服
谢谢!
假设elem
是WebElement
,你可以使用:
import org.openqa.selenium.Keys;
...
elem.sendKey(Keys.NUMPAD9);
编辑
由于这不起作用,机器人的替代方法是 运行 通过您的 WebDriver
实例的 JavaScript 片段,以将字段的值更改为您想要的值。它会是这样的:
((JavascriptExecutor) driver).executeScript("$('#phone').prop('value', '+3806547898');");
sendKeys() 不接受整数作为参数,因此您需要将整数转换为字符串,然后在 sendKeys 命令中使用它。
示例
int intPeriod= (int)Double.parseDouble(period);
element.sendKeys(String.valueOf(intPeriod));