我有一个名为“inputIDD”的字符串,例如: String InputIDD="input-2"; 并希望将此字符串传递到使用“input-2”的位置,如下所示:
String InputIDD = "input-2";
for (int a = 1; a <= 6; a++)
{
System.out.println("Value of a:" + a);
System.out.println("Value of InputID:" + InputID);
// String y= Integer.toString(x);
switch (a) {
case 1:
driver.findElementByXPath("(//input[@id='input-2'])[1]").sendKeys("0");
break;
case 2:
driver.findElementByXPath("(//input[@id=InputIDD])[2]").sendKeys(ToAdd);
break; // optional
等等,
driver.findElementByXPath("(//input[@id='input-2'])[1]").sendKeys("0");
:有效
driver.findElementByXPath("(//input[@id=InputIDD])[1]").sendKeys("0");
:
不起作用
为什么,有什么想法吗?
最佳答案
在情况 2 中,您将字符串 InputIDD 传递到xpath 表达式中,而不是变量InputIDD 的值。您需要这样做:
driver.findElementByXPath(String.format("(//input[@id=%s)[2]", InputIDD).sendKeys(ToAdd);
在上面的语句中,String.format 方法将在格式字符串“%s”表示的位置处交换存储在 InputIDD 中的值。
关于java - 如何将JAVA字符串传递给Input ID,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52264855/