无效字符'#'ExecuteScript
本文关键字:ExecuteScript 字符 无效 | 更新日期: 2023-09-27 18:01:17
我试图运行ExecuteScript,并得到这个错误
Invalid character '#'
但是我从控制台测试了这个脚本- fox(调试)所有工作。
我是这样运行脚本的
IJavaScriptExecutor js = browserToRun as IJavaScriptExecutor;
js.ExecuteScript("'$('#accountListCell').find('option[value='123']').trigger( 'change' )'");
我在这里做错了什么?
我正在使用PhantomJSDriver .
i try this to find error
string test= "$(''#accountListCell').find('option[value='123']').trigger( 'change' )
这是我得到的
$('#accountListCell').find('option[value='444-135777']').trigger( 'change' )
您正在为WebDriver提供一个脚本。它必须是一个字符串。您已经使用"
引号来提供脚本。让我们看一下您提供的脚本:
'$('#accountListCell').find('option[value='123']').trigger( 'change' )'
您注意到的第一件事是语法高亮显示全错了。$
不是脚本内的字符串,因此将其写在字符串内没有意义。移除第一个和最后一个'
:
$('#accountListCell').find('option[value='123']').trigger( 'change' )
现在好多了。还有一个问题。如果您查看find
参数,它是另一个子字符串。CSS字符串可以用'
和"
包装。有时你甚至不需要引号。使用
$('#accountListCell').find('option[value='"123'"]').trigger( 'change' )
因为你必须转义"
如果你想在"
或
$('#accountListCell').find('option[value=123]').trigger( 'change' )
最终:js.ExecuteScript("$('#accountListCell').find('option[value='"123'"]').trigger( 'change' )");