无法从C#(CefSharp)访问Javascript对象

时间:2014-10-19 21:33:59

标签: javascript c# chromium-embedded cefsharp

我的设置非常简单,在C#(WPF)中我有一个WebView,它可以加载我的HTML页面。

现在我想在两者之间进行双向沟通。

使用RegisterJsObject从Javascript调用C#对我来说完全没问题。

现在我尝试使用ExecuteScript从C#执行Javascript。

只要我只使用普通的Javascript,例如

ExecuteScript("document.getElementById('test').innerHTML='test'")</code>

它完美无缺。

但是当我尝试访问我在Javascript中创建的函数时,它无法执行它们。

使用Javascript:

function test(param) {
    alert(param);
}

C#:

webView.ExecuteScript("test('123')");

2 个答案:

答案 0 :(得分:0)

这是我使用WebView从我的WPF C#应用程序调用我的Javascript函数的方法:

 this.webView.InvokeScript("test", new object[] { "('123')" });

有关更详细的说明,请访问此网站:http://www.dotnetfunda.com/articles/show/840/working-with-webbrowser-in-wpf

希望这是对您有帮助的答案。

答案 1 :(得分:0)

我不确定,我的实际问题是什么。

我从头再次开始工作,从基本调用开始,然后更接近我想要执行的实际代码,现在它以某种方式工作。