页面文件

View Code

<asp:DropDownList ID="DropDownList1" runat="server" OnSelectedIndexChanged="DropDownList1_SelectedIndexChanged" AutoPostBack="True">

          <asp:ListItem>城市1</asp:ListItem>

           <asp:ListItem>城市2</asp:ListItem>

</asp:DropDownList>

<asp:DropDownList ID="DropDownList2" runat="server">

</asp:DropDownList>

程序文件

View Code

protected void DropDownList1_SelectedIndexChanged(object sender, EventArgs e)

       {

if (DropDownList1.SelectedItem.Text == "城市1")

               {  

                     DropDownList2.Items.Clear(); DropDownList2.Items.Add("区1"); DropDownList2.Items.Add("区2");

               }

else if (DropDownList1.SelectedItem.Text == "城市2")

             {

                      DropDownList2.Items.Clear(); DropDownList2.Items.Add("区3"); DropDownList2.Items.Add("区4");

             }

      }

注意第一个dropdownlist的AutoPostBack="True"一定要设置 其实如果这种省市区联动的一般不用数据库,直接在js里面写,或者找现成的有很多,
放数据库里浪费服务器资源,而且刷新效果不好。

提供一个比较好的省市三级联动的DropDownList+Ajax的三种框架(aspnet/Jquery/ExtJs)
示例:http://www.cnblogs.com/downmoon/archive/2010/06/15/1758675.html

附加一个使用数据库数据的例子:

前台控件代码:

<asp:PlaceHolder ID="PlaceHolder1" runat="server">    <asp:Label ID="Label1" runat="server" Text="模块:"></asp:Label>       <asp:DropDownList ID="DropDownList1" runat="server"            onselectedindexchanged="DropDownList1_SelectedIndexChanged"     AutoPostBack="True">        </asp:DropDownList>        &nbsp;&nbsp;&nbsp;&nbsp;<asp:Label ID="Label2" runat="server" Text="分类:" Visible="false"></asp:Label>         <asp:DropDownList ID="DropDownList2" Visible="false" runat="server">        </asp:DropDownList></asp:PlaceHolder>

后台代码段:

    protected string SqlModuleList = "";protected string SqlTypeList = "";    SqlHelper sqlhelper = new SqlHelper();protected void Page_Load(object sender, EventArgs e)    {if (!IsPostBack)        {            ModuleList(); //首次加载模块的下拉数据        }    }protected void DropDownList1_SelectedIndexChanged(object sender, EventArgs e)    {if (DropDownList1.SelectedItem.Text != "")        {            SqlTypeList = "select TypeID,TypeName from KY_SendMessage_Type as T,KY_SendMessage_Module as M                             where T.ModuleID=M.ModuleID and T.ModuleID=" + DropDownList1.SelectedValue + "";            DataSet ds = sqlhelper.readDataSet(SqlTypeList);            DataTable dt = ds.Tables[0];if (dt.Rows.Count != 0)//判断模块下面是否有子分类            {                Label2.Visible = true;                DropDownList2.Visible = true;                DropDownList2.Items.Clear();            }else            {                Label2.Visible = false;                DropDownList2.Visible = false;            }            DropDownList2.DataSource = dt;            DropDownList2.DataValueField = "TypeID";            DropDownList2.DataTextField = "TypeName";            DropDownList2.DataBind();        }    }protected void ModuleList()    {        SqlModuleList = "select * from KY_SendMessage_Module as M";        DataSet ds = sqlhelper.readDataSet(SqlModuleList);        DataTable dt = ds.Tables[0];        DropDownList1.DataSource = dt;        DropDownList1.DataValueField = "ModuleID";        DropDownList1.DataTextField = "ModuleName";        DropDownList1.DataBind();    }

部分效果图:

初始加载图

       点击选项加载子下拉图

转载于:https://www.cnblogs.com/jianglan/archive/2012/02/19/2358492.html

asp.net中使用下拉菜单的级联问题相关推荐

  1. Delphi访问网页中的下拉菜单

    Delphi通过TWebBrowser浏览网页,然后访问该网页中的下拉菜单: uses MsHtml; procedure TForm1.Button1Click(Sender: TObject); ...

  2. python choice添加下拉框_自定义Django Form中choicefield下拉菜单选取数据库内容实例...

    工作中遇到的问题,自定义了一个forms.form表单,某项需要作出下拉菜单,下拉菜单中的选项需要从数据库(objectForm models)中提取. form.py为: class objectF ...

  3. python下拉菜单_自定义Django Form中choicefield下拉菜单选取数据库内容实例

    工作中遇到的问题,自定义了一个forms.form表单,某项需要作出下拉菜单,下拉菜单中的选项需要从数据库(objectForm models)中提取. form.py为: class objectF ...

  4. 在excel的单元格中设置下拉菜单

    很多时候我们在编辑excel的时候,在插入相同的内容时显得比较繁琐,下面教大家在excel单元格中设置下拉菜单,直接点击后更改单元格内容..步骤如下: 1.选中一列,然后点击菜单栏"数据&q ...

  5. 新版HyperMesh的Assemblies中调出下拉菜单查看Component(装配关系模型树)

    新版HyperMesh的Assemblies中调出下拉菜单查看Component(装配关系模型树) 从Altair更新的2019版本开始,在Model模型树中找不到Assemblies了,这样导致好多 ...

  6. excel中通过下拉菜单显示不同的报表内容,类似下拉选项中,一旦切换内容,后面的表格内容全都不同?

    EXCEL是日常办公中应用非常多的办公软件之一,其强大的数据统计.分析功能为我们的工作带来不少方便.我们可以在EXCEL中设置下拉菜单,以方便我们输入相同内容.本文就以将性别设置为下拉菜单为例,介绍具 ...

  7. 为什么微信截图无法截取其他软件中的下拉菜单

    原因终于找到了: 想要截取其他软件中的下拉菜单,不能使用微信默认的截屏快捷键!!! 改一下快捷键就可以了!!!

  8. 【自学HTML笔记第5篇】HTML中的下拉菜单标签

    我们每个人都有瑕疵,不满别人的同时我们更应该去懂得理解和接受: 目录 下拉菜单标签: 代码演示: select 标签常用属性: 代码演示: option标签常用属性: 代码演示: 如果觉得写的不错,就 ...

  9. excel添加列下拉框票价_如何在excel中设置下拉菜单

    excel是日常办公中应用非常多的办公软件之一,其强大的数据统计.分析功能为工作带来不少方便.在EXCEL中设置下拉菜单,以方便输入相同内容.本文就以将性别设置为下拉菜单为例,介绍在excel中设置下 ...

  10. html 下拉框设置名称,html下拉菜单怎么做?高手教你如何在HTML和CSS中创建下拉菜单...

    html下拉菜单怎么做?html下拉菜单代码是什么?这些对于刚刚入门的新手,还不是很明白,下面高手教你如何在HTML和CSS中创建下拉菜单? 很多人都会遇到将鼠标悬停在导航上,会出现下拉菜单; 一般出 ...

最新文章

  1. 一张时序图让你看懂:脏读、不可重复读
  2. 跟我一起学perl系统管理脚本 第3课
  3. c语言cnn实现ocr字符,端到端的OCR:基于CNN的实现
  4. po 价格条件表_SAP-MM定价条件全解析 -
  5. .NET Core TDD 前传: 编写易于测试的代码 -- 依赖项
  6. Codeforces Round #615 (Div. 3) A-F
  7. mysql组件化_MySql笔记
  8. 2020-2021家居行业年度盘点与趋势洞察
  9. 程序员心声:我为什么偏爱苹果电脑和Mac OS X
  10. android afinal 框架 finalhttp,【Android实战】Afinal框架的使用大全案例
  11. 网络虚拟信用卡如何申请?Yandex万事达虚拟信用卡申请教程
  12. 麦子学院cocos2d听课截图
  13. 你去过(gan)大(huo)年(che),Down机别烦我
  14. [GBase 8s 教程]GBase 8s UNION 操作符
  15. Google pixel Android 8.0 模拟器
  16. 伪原创视频模糊 视频md5值查询
  17. IOS指纹/面容识别,TouchID/FaceID验证
  18. 智慧黄金眼(通达信指标 副图 源码 测试图)
  19. 半导体物理实验 01 - | 晶体结构构建、仿真与分析
  20. 台式计算机的CPU上安装有小风扇,台式电脑cpu风扇安装教程

热门文章

  1. python的单元测试unittest模块
  2. python fileinput处理多文件
  3. Node.js:连接 MySQL
  4. 【转】Using hash_map on GCC
  5. 【转】STL中map用法详解
  6. csapp第八章 异常控制流
  7. unigui作中间件使用
  8. win7新建文件夹-快捷键
  9. ARC_xp_20160526
  10. Java多线程学习笔记-线程的状态