如何在这种情况下从C#调用WebBrowser控件中的JavaScript

时间:2011-01-06 09:23:32

标签: c# javascript browser

抱歉,我的英语不好,我的问题如下:

以普通方式从C#调用WebBrowser控件中的JavaScript: 的JavaScript

function showMe()

{      ... }

C#

webBrowser1.Document.InvokeScript("showMe");

没关系!

但如何在这种情况下打电话:

HTML:

<a href="javascript:void(0);" onclick="App.followcancel('1880161672',this,'0','A','B');return false;">hello</a>

C#:

webBrowser1.Document.InvokeScript(????????)

我不知道如何编写正确的paremeter来实现onclick的javascript

任何人都会帮助我,非常感谢

2 个答案:

答案 0 :(得分:3)

像这样的东西(如果你将链接的id设置为“mylink”):

HtmlElement el = webBrowser1.Document.All["mylink"];
object obj = el.DomElement;
System.Reflection.MethodInfo mi = obj.GetType().GetMethod("onclick");
mi.Invoke(obj, new object[0]); 

答案 1 :(得分:1)

按照你给出的例子:

webBrowser1.Document.InvokeScript("App.followcancel('1880161672',this,'0','A','B')");

编辑:此示例已损坏。

您需要将{this'替换为document.getElementById('mylink')(假设id属性设置为值mylink)或使用HABJAN给出的方法。