在Web编程中,可编辑的下拉列表一直是个不是问题的问题,随之而出的第三方控件、Js控制Select控件的代码也随处可见,但是能兼容所有浏览器,
下拉框和文本框紧密结合,实现起来却不是那么容易。最近做项目,想到一个DropDownList可编辑控件比较好的实现方法,和大家分享一下。
我的方法是在DropDownList上加层和文本框,有人喜欢用像素定位文本框,这样做不但很难定位,而且浏览器运行出来的效果可能有偏差;
用层定位相对而言比较好控制。
Code
<div>
<asp:DropDownList ID="DropDownList1" runat="server" AutoPostBack="true" OnSelectedIndexChanged="DropDownList1_SelectedIndexChanged"
Width="180px" Style="position: absolute;">
<asp:ListItem>测试一</asp:ListItem>
<asp:ListItem>测试二</asp:ListItem>
<asp:ListItem>测试三</asp:ListItem>
</asp:DropDownList>
<div>
<iframe id="DivShims" src="javascript:false;" scrolling="no" frameborder="0" style="position: absolute;
height: 20px;" width="158px"></iframe>
<asp:TextBox ID="txtCName" runat="server" Style="width: 158px; position: absolute;"></asp:TextBox>
</div>
下拉框和文本框紧密整合。
页面加载及触发DropDownList1_SelectedIndexChanged事件,给文本框赋值。
string text = DropDownList1.SelectedValue.ToString();//DropDownList1选中的值
txtCName.Value = text;//给txtCName赋值
运行测试。
更改下拉框的值。
本文来自: PQ秀秀网(http://www.pqshow.com) 详细出处参考:http://www.pqshow.com/program/aspnet/200909/10323.html