如果要想给 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,就是这么简单!