Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/460.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript错误:参数列表后缺少(0)_Javascript_Java_Selenium_Automated Tests_Browser Automation - Fatal编程技术网

Javascript错误:参数列表后缺少(0)

Javascript错误:参数列表后缺少(0),javascript,java,selenium,automated-tests,browser-automation,Javascript,Java,Selenium,Automated Tests,Browser Automation,我找不到这个错误的原因。好像在第四行。我试过各种不同的方法。有人能指出我在这方面的错误吗 public WebElement jsQuery(String componentQuery) { String cmd = "arguments[0].querySelector('" + componentQuery +"')"; String js = "return " + cmd + ".id;";

我找不到这个错误的原因。好像在第四行。我试过各种不同的方法。有人能指出我在这方面的错误吗

public WebElement jsQuery(String componentQuery) {
    String cmd = "arguments[0].querySelector('" + componentQuery +"')";
    String js = "return " + cmd + ".id;";
   // String id = (String) js.executeScript("return document.querySelector('" + componentQuery +"').id");
    String id = (String) ((JavascriptExecutor) driver).executeScript(js);
    waitForJavascript(5000, 3);
    return driver.findElement(By.id(id));
}

您需要在
componentQuery
Java变量中转义引号

String componentQueryEscaped=componentQuery.replaceAll(“'”,“\”);
您还可以将JS代码更改为使用反勾号而不是单引号:

“参数[0]。querySelector(`+componentQuery+“`)”;

但是第一个解决方案更可靠。

这个函数是用什么调用的?这是Java,不是JavaScript。没关系,我看到它在内部执行JS。
componentQuery
的价值是什么?首先尝试自己编写JavaScript?