这是一个用DropDownList 实现的省市级三级联动,记录一下········
<asp:ScriptManager ID="ScriptManager1" runat="server">/asp:ScriptManager>
<asp:UpdatePanel ID="UpdatePanel1" runat="server"> <ContentTemplate> <p><span class="redcolor">* </span>选择地区: <asp:DropDownList ID="ProvinceSelect" AutoPostBack="True" runat="server" OnSelectedIndexChanged="GetCityName_onClick"> </asp:DropDownList> <asp:DropDownList runat="server" ID="CitySelect" AutoPostBack="True" OnSelectedIndexChanged="Getcounty_OnClick" > </asp:DropDownList> <asp:DropDownList AutoPostBack="True" runat="server" ID="County"> </asp:DropDownList> </p> </ContentTemplate> <Triggers> <asp:AsyncPostBackTrigger ControlID="ProvinceSelect" EventName="SelectedIndexChanged" /> </Triggers></asp:UpdatePanel>
后台代码:
protected void Page_Load(object sender, EventArgs e) { if (!IsPostBack) { ProvinceSelect.DataSource = BFL.GetPrivoces(); ProvinceSelect.DataTextField = "RegionName"; ProvinceSelect.DataValueField = "RegionId"; ProvinceSelect.DataBind(); ProvinceSelect.Items.Insert(0, new ListItem("请选择", string.Empty)); CitySelect.Items.Insert(0, new ListItem("请选择", string.Empty)); County.Items.Insert(0, new ListItem("请选择", string.Empty)); } }
#region 省市县数据绑定 //市级绑定 public void GetCityName_onClick(object sender, EventArgs e) { CitySelect.DataSource = BFL.GetCitys(int.Parse(ProvinceSelect.SelectedItem.Value)); CitySelect.DataTextField = "RegionName"; CitySelect.DataValueField = "RegionId"; CitySelect.DataBind(); County.Items.Insert(0, new ListItem("请选择", string.Empty)); } //县级绑定 public void Getcounty_OnClick(object sender, EventArgs e) { County.DataSource = BFL.GetCitys(int.Parse(CitySelect.SelectedItem.Value)); County.DataTextField = "RegionName"; County.DataValueField = "RegionId"; County.DataBind(); County.Items.Insert(0,new ListItem("请选择",string.Empty)); } #endregion
时间: 2024-10-10 11:12:25