如果要想给 DropDownList 服务器控件添加客户端下拉事件,我们可以强制给它添加 onchange 事件,尽管在控件中没有这个方法的提示。添加完这个事件还不能达到目的,还要设置 AutoPostBack 属性为 false,不让它回发后台事件。
以下就是为大家分享的代码:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
|
< html xmlns = "http://www.w3.org/1999/xhtml" > < head runat = "server" > < title >DropDownList添加客户端下拉事件</ title > < script type = "text/javascript" > function getDropDownList() { var ddl1 = document.getElementById("<%=ddl1.ClientID%>"); var text = ddl1.options[ddl1.options.selectedIndex].text; //获取text值 var value = ddl1.value; //获取value值 alert("Text:" + ddl1.options[ddl1.options.selectedIndex].text + ", Value:" + ddl1.value); } </ script > </ head > < body > < form id = "form1" runat = "server" > < asp:DropDownList ID = "ddl1" runat = "server" AutoPostBack = "false" onchange = "getDropDownList();" > < asp:ListItem Text = "T1" Value = "V1" Selected = "True" ></ asp:ListItem > < asp:ListItem Text = "T2" Value = "V2" ></ asp:ListItem > < asp:ListItem Text = "T3" Value = "V3" ></ asp:ListItem > </ asp:DropDownList > </ form > </ body > </ html > |
总结一下,也就是说,要想给DropDownList下拉框添加客户端下拉事件,必须做两步工作,一是添加强制onchange事件,二是把 AutoPostBack属性设为false,就是这么简单!