asp.net中使用下拉菜单的级联问题
页面文件
<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>
程序文件
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> <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中使用下拉菜单的级联问题相关推荐
- Delphi访问网页中的下拉菜单
Delphi通过TWebBrowser浏览网页,然后访问该网页中的下拉菜单: uses MsHtml; procedure TForm1.Button1Click(Sender: TObject); ...
- python choice添加下拉框_自定义Django Form中choicefield下拉菜单选取数据库内容实例...
工作中遇到的问题,自定义了一个forms.form表单,某项需要作出下拉菜单,下拉菜单中的选项需要从数据库(objectForm models)中提取. form.py为: class objectF ...
- python下拉菜单_自定义Django Form中choicefield下拉菜单选取数据库内容实例
工作中遇到的问题,自定义了一个forms.form表单,某项需要作出下拉菜单,下拉菜单中的选项需要从数据库(objectForm models)中提取. form.py为: class objectF ...
- 在excel的单元格中设置下拉菜单
很多时候我们在编辑excel的时候,在插入相同的内容时显得比较繁琐,下面教大家在excel单元格中设置下拉菜单,直接点击后更改单元格内容..步骤如下: 1.选中一列,然后点击菜单栏"数据&q ...
- 新版HyperMesh的Assemblies中调出下拉菜单查看Component(装配关系模型树)
新版HyperMesh的Assemblies中调出下拉菜单查看Component(装配关系模型树) 从Altair更新的2019版本开始,在Model模型树中找不到Assemblies了,这样导致好多 ...
- excel中通过下拉菜单显示不同的报表内容,类似下拉选项中,一旦切换内容,后面的表格内容全都不同?
EXCEL是日常办公中应用非常多的办公软件之一,其强大的数据统计.分析功能为我们的工作带来不少方便.我们可以在EXCEL中设置下拉菜单,以方便我们输入相同内容.本文就以将性别设置为下拉菜单为例,介绍具 ...
- 为什么微信截图无法截取其他软件中的下拉菜单
原因终于找到了: 想要截取其他软件中的下拉菜单,不能使用微信默认的截屏快捷键!!! 改一下快捷键就可以了!!!
- 【自学HTML笔记第5篇】HTML中的下拉菜单标签
我们每个人都有瑕疵,不满别人的同时我们更应该去懂得理解和接受: 目录 下拉菜单标签: 代码演示: select 标签常用属性: 代码演示: option标签常用属性: 代码演示: 如果觉得写的不错,就 ...
- excel添加列下拉框票价_如何在excel中设置下拉菜单
excel是日常办公中应用非常多的办公软件之一,其强大的数据统计.分析功能为工作带来不少方便.在EXCEL中设置下拉菜单,以方便输入相同内容.本文就以将性别设置为下拉菜单为例,介绍在excel中设置下 ...
- html 下拉框设置名称,html下拉菜单怎么做?高手教你如何在HTML和CSS中创建下拉菜单...
html下拉菜单怎么做?html下拉菜单代码是什么?这些对于刚刚入门的新手,还不是很明白,下面高手教你如何在HTML和CSS中创建下拉菜单? 很多人都会遇到将鼠标悬停在导航上,会出现下拉菜单; 一般出 ...
最新文章
- 一张时序图让你看懂:脏读、不可重复读
- 跟我一起学perl系统管理脚本 第3课
- c语言cnn实现ocr字符,端到端的OCR:基于CNN的实现
- po 价格条件表_SAP-MM定价条件全解析 -
- .NET Core TDD 前传: 编写易于测试的代码 -- 依赖项
- Codeforces Round #615 (Div. 3) A-F
- mysql组件化_MySql笔记
- 2020-2021家居行业年度盘点与趋势洞察
- 程序员心声:我为什么偏爱苹果电脑和Mac OS X
- android afinal 框架 finalhttp,【Android实战】Afinal框架的使用大全案例
- 网络虚拟信用卡如何申请?Yandex万事达虚拟信用卡申请教程
- 麦子学院cocos2d听课截图
- 你去过(gan)大(huo)年(che),Down机别烦我
- [GBase 8s 教程]GBase 8s UNION 操作符
- Google pixel Android 8.0 模拟器
- 伪原创视频模糊 视频md5值查询
- IOS指纹/面容识别,TouchID/FaceID验证
- 智慧黄金眼(通达信指标 副图 源码 测试图)
- 半导体物理实验 01 - | 晶体结构构建、仿真与分析
- 台式计算机的CPU上安装有小风扇,台式电脑cpu风扇安装教程