webbrowser 如何执行带参数的JS函数?
模拟执行下面这个JS,selectSaCode(this)无效呢
<TD class=recordContent> <SELECT onchange=selectSaCode(this) name=saCode> <OPTION selected value=default>请选择</OPTION> <OPTION value=f650001>f650001</OPTION></SELECT> </TD>
public override bool webLogin(IHTMLDocument2 htmlElement)
{
all = htmlElement.all;
HTMLSelectElement daili = null; ;
foreach (IHTMLElement e in all)
{
if (e is HTMLSelectElementClass)
{
daili = (HTMLSelectElement)e;
if (daili.outerHTML.IndexOf("selectSaCode(this)") > 0)
daili.selectedIndex = 2;
}
else if (e is HTMLOptionElementClass)
{
HTMLOptionElement option = (HTMLOptionElement)e;
if (option.outerHTML.ToLower().IndexOf("f650001") > 0)
{
option.selected = true;
this.WebBrowser.Document.InvokeScript("selectSaCode", new object[] { daili});
//没有效果呢
//( (IHTMLDocument2)this.WebBrowser.Document.DomDocument).parentWindow.execScript("selectSaCode(this);");//习惯用这个,好像这个无法执行带参数的JS函数量
Thread.Sleep(1000);
}
}
}
}