当前位置: 代码迷 >> java >> 如何从中发送“ int”值,从而阻止任何字符串唱歌
  详细解决方案

如何从中发送“ int”值,从而阻止任何字符串唱歌

热度:14   发布时间:2023-08-02 10:55:10.0

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

 elem.sendKeys("6547898"); 

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

 robot.keyPress(KeyEvent.VK_9); 

(并且我曾经使用过它并且可以正常工作),但也许有人知道不使用Robot()怎么做? Robot不舒服。

谢谢!

假设elemWebElement ,则可以使用:

import org.openqa.selenium.Keys;

...

elem.sendKey(Keys.NUMPAD9);

编辑

由于此操作不起作用,因此“机器人”的另一种选择是通过WebDriver实例运行JavaScript代码段,以将字段的值更改为所需的值。 就像这样:

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

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

int intPeriod= (int)Double.parseDouble(period);
element.sendKeys(String.valueOf(intPeriod));
  相关解决方案