• 博客园logo
  • 会员
  • 周边
  • 新闻
  • 博问
  • 闪存
  • 众包
  • 赞助商
  • Chat2DB
    • 搜索
      所有博客
    • 搜索
      当前博客
  • 写随笔 我的博客 短消息 简洁模式
    用户头像
    我的博客 我的园子 账号设置 会员中心 简洁模式 ... 退出登录
    注册 登录
wangcai
博客园    首页    新随笔    联系   管理    订阅  订阅
ASP.NET下拉列表三级连动(DropDownList)

 

DropDownList 实现下拉列表三级连动
注意事项:
首先要将 DropDownList的AutoPostBack设为True,意思是当选定内容更改后,自动回发到服务器。
using System;
using System.Configuration;
using System.Collections.Generic;
using System.Data;
using System.Linq;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.HtmlControls;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Xml.Linq;
public partial class _Default : System.Web.UI.Page
{
    /// <summary>
    /// 加载厂商表
    /// </summary>
    private void FillList1()   
    {
        List<ProductorData> list = new ProductorDA().select();
        foreach (ProductorData data in list)
        {
            DropDownList1.Items.Add(new ListItem(data.Prod_name, data.Prod_code));
        }
    }
    /// <summary>
    /// 加载系列
    /// </summary>
    private void FillList2()
    {
        if (DropDownList1.SelectedItem != null)   //判断上级列表的内容是否为空!
        {
            DropDownList2.Items.Clear();          //每加载一次都要清空下拉列表的内容!
            string pd2 = DropDownList1.SelectedItem.Value;    //取出上级的内容,根据上级内容查询
            List<BrandData> list = new BrandDA().selectProd_code(pd2); 
            foreach (BrandData data in list)
            {
                DropDownList2.Items.Add(new ListItem(data.Brand_name, data.Brand_code));
            }
        }
    }
    /// <summary>
    /// 加载型号
    /// </summary>
    private void FillList3()
    {
        if (DropDownList2.SelectedItem != null)   //判断上级列表的内容是否为空!
        {
            DropDownList3.Items.Clear();          //每加载一次都要清空下拉列表的内容!
            string pd3 = DropDownList2.SelectedItem.Value;  //取出上级内容,根据上级内容查询
            List<CarData> list = new CarDA().selectBrand(pd3);
            foreach (CarData data in list)
            {
                DropDownList3.Items.Add(new ListItem(data.Name, data.Code));
            }
        }
    }
    /// <summary>
    /// 当页面初次加载时执行以下方法!
    /// </summary>
    protected void Page_Load(object sender, EventArgs e)
    {
        if (!IsPostBack)
        {
            FillList1();    //加载厂商
            FillList2();    //加载系列
            FillList3();    //加载型号
        }
    }
    /// <summary>
    /// 当厂商内容发生变化时自动加载系列和型号
    /// </summary>
    protected void DropDownList1_SelectedIndexChanged(object sender, EventArgs e)
    {
        FillList2();        //加载系列
        FillList3();        //加载型号
    }
    /// <summary>
    /// 当系列内容发生变化时自动加载型号
    /// </summary>
    protected void DropDownList2_SelectedIndexChanged(object sender, EventArgs e)
    {
        FillList3();        //加载型号
    }
}

ASP.NET下拉列表三级连动(DropDownList) - 史诗互联网易店的日志 - 网易博客 - GB2013 - GB2013的博客ASP.NET下拉列表三级连动(DropDownList) - 史诗互联网易店的日志 - 网易博客 - GB2013 - GB2013的博客
posted on 2010-06-15 18:15  小才  阅读(629)  评论(0)    收藏  举报
刷新页面返回顶部
博客园  ©  2004-2026
浙公网安备 33010602011771号 浙ICP备2021040463号-3