【发布时间】:2017-08-24 12:38:39
【问题描述】:
我正在尝试使用 c# 自动化 html 事件。
我有 html 下拉菜单,并在更改其值时显示/隐藏特定的 div。
下面是示例 HTML 代码。
<!DOCTYPE html>
<html>
<body>
<select id="ddl">
<option value="1" selected="selected">TextBox</option>
<option value="2">Button</option>
</select>
<input style="display: none" type="text" class="textboxclass" />
<div class="btn" style="display: none">
<button type="button">Submit</button>
</div>
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.8.3/jquery.min.js"></script>
<script type="text/javascript">
$('#ddl').change(function()
{var name = $('#ddl option:selected').text();
var id = $('#ddl option:selected').val();
if(id =="1"){$('.textboxclass').show();$('.btn').hide();}
else{$('.textboxclass').hide();$('.btn').show();}});
</script>
</body>
</html>
我正在使用 mshtml.dll 来读取 HtmlDocument,我必须以编程方式触发“更改”事件。
尝试了以下不同的方法:
HTMLOptionElement drpelem.select=true;
HTMLSelectElement elem.click();
但它不起作用。请指导我。
【问题讨论】:
-
你可以使用jQuery来执行更改事件,比如
$('#ddl').trigger('change')或$('#ddl').change() -
我需要通过c#代码触发事件。我尝试使用 .fireevent("onchange") 它适用于 javascript 调用。但同样不适用于 jquery $().change() 事件。