首页 > 代码库 > Webform 三级联动例子
Webform 三级联动例子
首先分别做三个下拉列表
<body> <form id="form1" runat="server"> <asp:DropDownList ID="DropDownList1" runat="server" AutoPostBack="True"></asp:DropDownList> <asp:DropDownList ID="DropDownList2" runat="server" AutoPostBack="True"></asp:DropDownList> <asp:DropDownList ID="DropDownList3" runat="server"></asp:DropDownList></form></body>
建类:China实体类
public China() { } private string code; public string Code { get { return code; } set { code = value; } } private string name; public string Name { get { return name; } set { name = value; } } private string prentcode; public string Prentcode { get { return prentcode; } set { prentcode = value; } }
数据访问类:
public class ChinaData{ SqlConnection conn = null; SqlCommand cmd = null; public ChinaData() { conn = new SqlConnection("server=.;database=mydb;user=sa;pwd=123"); cmd = conn.CreateCommand(); } public List<China> Select(string pcode) { cmd.CommandText = "select * from ChinaStates where ParentAreaCode=@pcode"; cmd.Parameters.Clear(); cmd.Parameters.AddWithValue("@pcode", pcode); conn.Open(); SqlDataReader dr = cmd.ExecuteReader(); List<China> list = new List<China>(); if (dr.HasRows) { while (dr.Read()) { China data = new China(); data.Code = dr[0].ToString(); data.Name = dr[1].ToString(); data.Prentcode = dr[2].ToString(); list.Add(data);
}
}
conn.Close();
return list;
}
}
.cs后台代码
首先数据绑定:
if (!IsPostBack) { //调用方法绑定数据 Bind(DropDownList1,new ChinaStatesData().Select("0001"));Bind(DropDownList2, new ChinaStatesData().Select(DropDownList1.SelectedValue));Bind(DropDownList3, new ChinaStatesData().Select(DropDownList2.SelectedValue)); }//委托 DropDownList1.SelectedIndexChanged += DropDownList1_SelectedIndexChanged; DropDownList2.SelectedIndexChanged += DropDownList2_SelectedIndexChanged;
//造方法:private void Bind(DropDownList ddl, List<ChinaStates> list) { ddl.DataSource = list; ddl.DataTextField = "AreaName"; ddl.DataValueField = "AreaCode"; ddl.DataBind(); }
//SelectedIndexChanged事件 void DropDownList1_SelectedIndexChanged(object sender, EventArgs e) { Bind(DropDownList2, new ChinaStatesData().Select(DropDownList1.SelectedValue));//填充市 Bind(DropDownList3, new ChinaStatesData().Select(DropDownList2.SelectedValue));//填充区 }void DropDownList2_SelectedIndexChanged(object sender, EventArgs e) { Bind(DropDownList3, new ChinaStatesData().Select(DropDownList2.SelectedValue));//填充区 }
代码部分完成后,将下拉列表的AutoPostBack属性改为true
Webform 三级联动例子
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。