前台:
<div> <table> <tr> <td>地址:</td> <td> <asp:DropDownList ID="dropProvince" runat="server" AutoPostBack="True" onselectedindexchanged="dropProvince_SelectedIndexChanged"> </asp:DropDownList>省 </td> <td> <asp:DropDownList ID="dropCity" runat="server" AutoPostBack="True" onselectedindexchanged="dropCity_SelectedIndexChanged"> </asp:DropDownList>市 </td> <td> <asp:DropDownList ID="dropArea" runat="server"> </asp:DropDownList>县 </td> </tr> </table>
后台:
protected void Page_Load(object sender, EventArgs e) { if (!IsPostBack) { BLL.province bll_Province = new BLL.province(); List<Model.province> list = bll_Province.GetListModel(); dropProvince.DataSource = list; dropProvince.DataTextField = "provinceName"; dropProvince.DataValueField = "provinceID"; dropProvince.DataBind();
BLL.city bll_City = new BLL.city(); List<Model.city> listCity = bll_City.GetListCity("father='" + list[0].provinceID+ "'"); dropCity.DataSource = listCity; dropCity.DataTextField = "cityName"; dropCity.DataValueField = "cityID"; dropCity.DataBind();
BLL.area bll_Area = new BLL.area(); List<Model.area> listArea = bll_Area.GetlistArea("father='" + listCity[0].cityID + "'"); dropArea.DataSource = listArea; dropArea.DataTextField = "areaName"; dropArea.DataValueField = "areaID"; dropArea.DataBind();
} }
protected void dropProvince_SelectedIndexChanged(object sender, EventArgs e) { dropCity.Items.Clear(); dropArea.Items.Clear(); BLL.city bll_City = new BLL.city(); List<Model.city> list = bll_City.GetListCity("father='" +dropProvince.SelectedValue+ "'"); dropCity.DataSource = list; dropCity.DataTextField = "cityName"; dropCity.DataValueField = "cityID"; dropCity.DataBind(); }
protected void dropCity_SelectedIndexChanged(object sender, EventArgs e) { dropArea.Items.Clear(); BLL.area bll_Area = new BLL.area(); List<Model.area> list = bll_Area.GetlistArea("father='" + dropCity.SelectedValue + "'"); dropArea.DataSource = list; dropArea.DataTextField = "areaName"; dropArea.DataValueField = "areaID"; dropArea.DataBind(); }
三层的方法
BLL
public List<Model.province> GetListModel() { return dal.GetListModel(); }
Dal
public System.Collections.Generic.List<Model.province> GetListModel() { System.Collections.Generic.List<Model.province> list = new System.Collections.Generic.List<Model.province>(); DataTable dt = GetList("").Tables[0]; foreach (DataRow row in dt.Rows) { Model.province mpro = new Model.province(); mpro.id = Convert.ToInt32(row["Id"]); mpro.provinceID = row["provinceID"].ToString(); mpro.provinceName = row["provinceName"].ToString(); list.Add(mpro); } return list; }