【问题标题】:C# WPF WebBroswer Control: How to use JavaScriptC# WPF WebBroswer 控件:如何使用 JavaScript
【发布时间】:2012-05-09 04:13:57
【问题描述】:

我正在使用 WPF WebBrowser 控件,我想访问一些 JavaScript 函数,但出现了问题。

我可以使用 InvokeScript 并执行 browser.InvokeScript("alert", "Hello");q 但是如何通过 ID 或 TAG 获取元素以及如何将该元素分配给 javascript var?

示例: Javascript: var elements = document.getElementsByTagName("embed"); 元素[0].doSomething();

C#: 怎么样?

我尝试了一切,但没有任何效果。谁能帮帮我:(

【问题讨论】:

    标签: c# javascript .net wpf webbrowser-control


    【解决方案1】:

    很晚的答案,但如果其他人需要它:

    直接C#:http://msdn.microsoft.com/en-us/library/system.windows.forms.htmldocument.getelementsbytagname.aspx

    HtmlElementCollection elems = webBrowser1.Document.GetElementsByTagName("embed");
    foreach (HtmlElement elem in elems)
        {
            elem.InvokeMember("doSomething");
        }
    

    替代方案:http://msdn.microsoft.com/en-us/library/a0746166

    基本上你应该在 JS 中创建一个函数:

    var myCustomFunc = function(tagName) {
      var elements = document.getElementsByTagName(tagName); elements[0].doSomething();
    }
    

    然后用

    从 C# 调用它
    webBrowser1.Document.InvokeScript("myCustomFunc ", new String[] { "embed" });
    

    变量“tagName”被替换为“embed”

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2011-11-02
      • 2019-09-11
      • 1970-01-01
      • 1970-01-01
      • 2014-01-21
      • 1970-01-01
      • 2011-07-15
      • 1970-01-01
      相关资源
      最近更新 更多