三级联动的DropDownList实现过程

前台页面代码:

<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;
        }

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值