我已经成功地使用了这个。
但在这种情况下,我需要传递参数,并获得返回值在一次从javascript使用这个方法。但这段代码是行不通的:
int idx=1;
chromeBrowser.EvaluateScriptAsync(
string.Format(@"
var i = {0};
return i;
", idx)
).ContinueWith(x =>
{
var response = x.Result;
if (response.Success && response.Result != null)
{
this.Invoke((MethodInvoker)delegate
{
int atemp = (int)response.Result;
MessageBox.Show(atemp.ToString());
});
}
});
请帮我解决这个问题。
1条答案
按热度按时间2nc8po8w1#
我认为问题在于您的JavaScript代码应该是self invoking function。
尝试将函数重写为如下形式:
从上面的代码片段中可以看到,这段代码实际上返回了一个值,你可以在C#中使用这段JavaScript,如下所示: