![](/img/trans.png)
[英]Trigger a Click event in javascript using c#(WebBrowser control)
[英]Why can't I trigger select change event using C# WebBrowser control?
在javascript中,我看到以下定义:
$('#dropDownId').change(function(){
... do stuff...
});
<select id="dropDownId">
<option value="1">value 1</option>
<option value="2">value 2</option>
<option value="3">value 3</option>
</select>
我尝试使用以下代码:
webBrowser.Document.GetElementById("dropDownId").SetAttribute("value", "1");
webBrowser.Document.GetElementById("dropDownId").Children[1].SetAttribute("selected", "selected");
webBrowser.Document.GetElementById("dropDownId").InvokeMember("onchange");
我可以看到下拉菜单已更改为正确的值,但是以下操作从未执行:
$('#dropDownId').change(function(){
... do stuff...
});
另外,当我在Chrome中查看“ dropDownId”的属性时,“ onchange”事件为null,那么如何为下拉菜单调用上述“ change”脚本?
jquery
附加事件以允许多个事件处理程序,这就是为什么select
onchange
属性为null的原因。
你可以做:
function myChange(){
... do stuff...
}
<select id="dropDownId" onchange="myChange">
...
</select>
要么
webBrowser.Document.InvokeScript("myChange");
要么
function myChange_Jquery(){
$("#dropDownId").change();
}
webBrowser.Document.InvokeScript("myChange_Jquery");
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.