编程语言
首页 > 编程语言> > c# – 我如何在托管WebBrowser控件的应用程序中调用WebBrowser控件查看的页面中的JavaScript函数?

c# – 我如何在托管WebBrowser控件的应用程序中调用WebBrowser控件查看的页面中的JavaScript函数?

作者:互联网

我创建了一个C#桌面应用程序,它依赖于Web爬虫的想法.

我使用Web浏览器控件创建了我的应用程序来打开一个网站并按计划登录并重定向到具有gridview的特定页面,其中包含我要收集的所有用户数据…

但是这里的问题是网格视图中的用户名点击了JavaScript函数.我知道它的名字,但不知道如何在桌面应用程序中调用它.

允许我这样做的命名空间或DLL是什么?

解决方法:

我认为这可以帮助你:

http://www.west-wind.com/WebLog/posts/493536.aspx

编辑:基于该链接,这是一个小样本应用程序.将Button和WebBrowser控件添加到Windows窗体并添加以下代码:

    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
            this.webBrowser1.DocumentText = @"<html>
<body>
<script type = ""text/javascript"">
function ShowMessage(text) {
   alert(text);
}
</script>
</body>
<input type=""button"" onclick=""ShowMessage('From JavaScript')"" value=""Click me""/>
</html>";
        }

        private void button1_Click(object sender, EventArgs e)
        {
            this.webBrowser1.Document.InvokeScript("ShowMessage",new object[]{"From C#"});
        }
    }

如果单击浏览器中的按钮,它将显示javascript消息,如果单击Windows窗体中的按钮,它将显示C#消息.

标签:javascript,c-2,webbrowser-control
来源: https://codeday.me/bug/20190726/1547925.html