【问题标题】:How can I call a Function of an JavaScript Object with WPF?如何使用 WPF 调用 JavaScript 对象的函数?
【发布时间】:2012-09-06 22:36:51
【问题描述】:

我的 WPF 应用程序 (System.Windows.Controls.WebBrowser) 中有一个 WebBrowser 实例。在网站中,我有以下 JavaScript 代码。

// Javascript   
myNamespace = {};
myNamespace.helloJavaScriptMETHOD = function() { alert("Hello"); };

helloJavaScriptFUNCTION = function() { alert("Hello); };

我可以用

调用 helloJavaScriptFUNCTION
// C#
webBrowser.InvokeScript("helloJavaScriptFUNCTION");

如何在不更改网站/JavaScript 的情况下调用 helloJavaScriptMETHOD?我尝试了以下但没有成功:

// C#
webBrowser.InvokeScript("myNamespace.helloJavaScriptMETHOD");
webBrowser.InvokeScript("(function(){ return myNamespace.helloJavaScriptMETHOD; })");
webBrowser.InvokeScript("myNamespace.helloJavaScriptMETHOD()");

【问题讨论】:

    标签: c# javascript wpf browser


    【解决方案1】:

    您可能无法直接调用命名空间中的 JavaScript 方法,但可以使用 eval。类似的技术被用于调用 JQuery。看How to call a jQuery function from .NET WebBrowser control using InvokeScript()?。它使用了错误的控制,但该技术可能在这里起作用。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-11-04
      • 1970-01-01
      • 2015-11-16
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多