Selenium调用匿名函数会生成语法错误

时间:2015-01-14 23:44:23

标签: javascript jquery selenium

我正在尝试使用匿名函数通过Selenium中的executeAsyncScript进行jquery调用。我通常不使用匿名函数,所以我认为我的语法正确,但是,我不断收到语法错误:Exception:org.openqa.selenium.WebDriverException: missing ; before statement谷歌搜索错误消息基本上说这是一个语法问题,但我找不到我的错误

代码:

 JavascriptExecutor js = (JavascriptExecutor) driver;
 String ex = "cb = arguments[ arguments.length - 1 ];\n"  +
         "(function(){String btn = \"jq(\\\"a[title='Import']\\\").click();\"}());\n" +
          "cb();";

 System.out.println(ex);
 js.executeAsyncScript(ex);

println(ex)给我的看起来是正确的:

cb = arguments[ arguments.length - 1 ];
(function(){String btn = "jq(\"a[title='Import']\").click();"}());
cb();

第二双眼睛会非常感激,看看我做错了什么或不理解。谢谢。

正如旁注,我们已经在我们的环境中覆盖$为“jq”。

0 个答案:

没有答案