http://taskcn.blog. 163.com/
ASP.NET MVC DropDownList数据绑定及使用详解DropDownList控件用于创建下拉列表。 DropDownList控件中的每个可选项都是由ListItem元素定义的!该控件支持数据绑定
一 DropDownList
1. 1 DropDownList绑定数据
1. 1. 1 DropDownList固定绑定
这种方式适合那些已经固定的数据绑定到DropDownList上。
例
复制代码代码如下:asp:DropDownList runat="server" ID="ddlArea" Width="120px"asp:Listitem value="0"选择性别/asp:Listitemasp:Listitem value="1"男/asp:Listitemasp:Listitem value="2"女/asp:Listitem
/asp:DropDownList
1. 1.2 DropDownList动态绑定
前台
后台两种方法 注意每次绑定都要清除一下原来的记录例ddlArea. Items.Clear() ;
第一种
复制代码代码如下:
SqlConnection conn = new
SqlConnection("server=. ;uid=sa;database=pubs") ;
SqlDataAdapter dap = new SqlDataAdapter("select * from jobs", conn) ;DataTable dt = new DataTable() ;dap.Fill (dt) ;
DropDownList1. Items.Clear() ;
DropDownList1.DataSource = dt;
DropDownList1.DataTextField = "job_desc";
DropDownList1.DataValueField = "job_id";
DropDownList1.DataBind() ;
DropDownList1. Items. Insert(0, new ListItem("选择数据", "随机绑定") ) ;//插入默认项此举必须放到数据绑定之后效果
第二种
复制代码代码如下:
SqlConnection conn = new
SqlConnection("server=. ;uid=sa;database=pubs") ;
SqlDataAdapter dap = new SqlDataAdapter("select * from jobs", conn) ;DataTable dt = new DataTable() ;dap.Fill (dt) ;if (dt.Rows.Count != 0)
{http://taskcn.blog. 163.com/
http://taskcn.blog. 163.com/
DropDownList1. Items.Clear() ;for (int i = 0; i dt.Rows.Count; i++)
{
DropDownList1. Items.Add(new ListItem(dt.Rows[i] ["显示值"] .ToString() ,dt.Rows[i] ["usbkey"] .ToString() ) ) ;
}
DropDownList1. Items. Insert(0, "选择网吧") ;
DropDownList1. Items[0] .Value = "0";或
// DropDownList1. Items. Insert(0, new ListItem("选择数据", "随机绑定") ) ;//插入默认项此举必须放到数据绑定之
}else
{
DropDownList1. Items. Insert(0, "无网吧记录") ;
DropDownList1. Items[0] .Value = "0";
}
二 DropDownList1的取值问题
2. 1取DropDownList1的索引值也就是选择value值asp:Listitemvalue="1"男/asp:Listitem取1
.net中DropDownList1.SelectedValue.ToString()javascirpt varddl1=document.getElementByIdx_x("DropDownList1") . selectedIndex;
2.2取DropDownList1的选项也就是选择item值asp:Listitem value="1"男/asp:Listitem取男
.net中DropDownList1.SelectedItem.ToString() ;javascriptdocument.getElementByIdx_x("DropDownList1") .options[document.getElement("selectID") . selectedIndex] .value
三 DropDownList1事件问题
重点:使用OnTextChanged,OnSelectedIndexChanged事件时必须设置复制代码代码如下:asp:DropDownList runat="server"
OnTextChanged="DropDownList1_TextChanged"OnSelectedIndexChanged="DropDownList1_SelectedIndexChanged1"
OnTextChanged,OnSelectedIndexChanged这两个事件具体有什么区别我也没测试出来只知道OnSelectedIndexChanged这个事件要比OnTextChanged执行的早也就是如果这两个事件都存在会首先执行OnSelectedIndexChanged这个事件然后才执行OnTextChanged.
四如何避免DropDownList下拉框中的值重复添加
AppendDataBoundItems是否填加重复值。真为添加假为不填加
原因 DropDownList控件AppendDataBoundItems属性设置为"True"了的改为False即可。http://taskcn.blog. 163.com/
http://taskcn.blog. 163.com/
例如如果专业后的DropDownList控件AppendDataBoundItems属性设置为"True"那么选择院系后专业里的值会不断添加。
五区别
复制代码代码如下:depart_ddl. Items. Insert(0,new ListItem("不选该项", "0") ) ;这是在首项添加数据。
Items.Add是在最后添加
DropDownList1. Items.Add(new ListItem("Text", "value") ) ;是在最后添加DropDownList1. Items. Insert(Index,new ListItem("Text", "value") ) ;这是在首项添加数据。
六从数据库中读取数据并绑定到DropDownList中
复制代码代码如下:if (ds.Tables[0] .Rows[0] ["State"] .ToString ()=="True")
{
DropDownListState. Items.FindByValue("1") .Selected =true;
}else
{
DropDownListState. Items.FindByValue("0") .Selected =true;
}http://taskcn.blog. 163.com/
Advinservers,国外商家,公司位于新泽西州,似乎刚刚新成立不久,主要提供美国和欧洲地区VPS和独立服务器业务等。现在有几款产品优惠,高达7.5TB的存储VPS和高达3.5TBDDoS保护的美国纽约高防服务器,性价比非常不错,有兴趣的可以关注一下,并且支持Paypal付款。官方网站点击直达官方网站促销产品第一款VPS为预购,预计8月1日交付。CPU为英特尔至强 CPU(X 或 E5)。官方...
Pia云是一家2018的开办的国人商家,原名叫哔哔云,目前整合到了魔方云平台上,商家主要销售VPS服务,采用KVM虚拟架构 ,机房有美国洛杉矶、中国香港和深圳地区,洛杉矶为crea机房,三网回程CN2 GIA,带20G防御,常看我测评的朋友应该知道,一般带防御去程都是骨干线路,香港的线路也是CN2直连大陆,目前商家重新开业,价格非常美丽,性价比较非常高,有需要的朋友可以关注一下。活动方案...
DMIT.io是成立于2018年的一家国外主机商,提供VPS主机和独立服务器租用,数据中心包括中国香港、美国洛杉矶和日本等,其中日本VPS是新上的节点,基于KVM架构,国际线路,1Gbps带宽,同时提供月付循环8折优惠码,或者年付一次性5折优惠码,优惠后最低每月8.72美元或者首年65.4美元起,支持使用PayPal或者支付宝等付款方式。下面列出部分日本VPS主机配置信息,价格以月付为例。CPU:...