Demo.sql

 create table Car(
[id] int identity,
[brand] varchar(50) not null,
[type] varchar(50) not null
)
go insert into Car ([brand],[type])values('BMW','B'),('BMW','M'),('BMW','W'),
('BENZ','B'),('BENZ','E'),('BENZ','N'),('BENZ','Z'),
('HONDA','H'),('HONDA','O'),('HONDA','N'),('HONDA','D'),('HONDA','A'),
('TOYOTA','T'),('TOYOTA','O'),('TOYOTA','Y'),('TOYOTA','A')

Demo.aspx

         <asp:ScriptManager runat="server">
</asp:ScriptManager>
<asp:UpdatePanel runat="server">
<ContentTemplate>
<asp:DropDownList ID="dropBrand" runat="server" OnSelectedIndexChanged="dropBrand_SelectedIndexChanged"
Width="" AutoPostBack="True">
</asp:DropDownList>
<asp:DropDownList ID="dropType" runat="server" Width="">
</asp:DropDownList>
</ContentTemplate>
</asp:UpdatePanel>

Demo.aspx.cs

         protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
BindDrop();
}
} private void BindDrop()
{
//将数据捆绑到下拉列表中
string sqlStr = "select distinct [brand] from Car";
DataTable dt = SqlHelper.ExecuteDataTable(sqlStr);
dropBrand.DataTextField = "brand"; //设置列表显示的字
dropBrand.DataValueField = "brand"; //设置列表提交后获得的字段,自己理解为隐藏绑定数据
dropBrand.DataSource = dt;
dropBrand.DataBind();
dropBrand.Items.Insert(, new ListItem("请选择车子品牌", ""));//第一项中加入内容,重点是绑定后添加
dropType.Items.Insert(, new ListItem("请选择车子品牌型号", ""));//第一项中加入内容,重点是绑定后添加
} protected void dropBrand_SelectedIndexChanged(object sender, EventArgs e)
{
string sqlStr = "select * from Car where [brand]='" + dropBrand.SelectedValue + "'";//页面加载后dropBrand.DataValueField隐藏绑定的数据,后边根据它查询dropType要显现的数据
DataTable dt = SqlHelper.ExecuteDataTable(sqlStr);
dropType.DataTextField = "type"; //设置dropBrand事件SelectedIndexChanged改变后dropType列表显示的数据
dropType.DataValueField = "id";
dropType.DataSource = dt;
dropType.DataBind();
}

参考原文:http://www.cnblogs.com/cqchai/archive/2011/05/28/2061378.html

ASP.NET中使用DropDownList实现无刷新二级联动详细过程的更多相关文章

  1. 在Thinkphp中使用AJAX实现无刷新分页

    在Thinkphp目录的Lib\ORG\Util\目录里新建AjaxPage.class.php,写入一下内容: <?php // +------------------------------ ...

  2. [Asp.net mvc]jquery.form.js无刷新上传

    写在前面 最近在自己的网盘项目中想用ajax.beginform的方式做无刷新的操作,提交表单什么的都可以,但针对文件上传,就是个鸡肋.在网上查找了发现很多人都遇到了这个问题,大部分都推荐使用jque ...

  3. jquery 无刷新多级联动

    原先不熟悉jquery时,总在寻找无刷新的方法,在此不断的积累自己所知道的jquery属性,常用方法.以下为jquery实现的无刷新联动事件 分公司: <select id="Sele ...

  4. JQuery中国省市区无刷新三级联动查询

    之前有写过用<Ajax控件来实现中国的省市区无刷新查询> 今天用JQuery来实现,用Ajax控件和JQuery的优缺点就先不说了. 效果图如下: 下面来结合代码来详细说明一下如何用JQu ...

  5. asp.net中的<%%>形式的详细用法实例讲解

    asp.net中的代码分离模式我们肯定都不陌生,C#(或者其它语言)写的代码一般不会和设计语言HTML混在一起,但是有的时候也避免不了,这时就会在UI页面里用<%%>来绑定显示.绑定变量数 ...

  6. Asp.Net下,基于Jquery的Ajax二级联动

    最近做一个项目,要求实现二级联动效果.背景为:通过学院的选择,联动出专业选项.起初想直接用微软的控件实现Ajax效果,但是DropDownList控件会自动触发PostBack,在后台根本就不好控制, ...

  7. Asp:Button控件onclick事件无刷新页面提示消息

    <asp:ScriptManager ID="ScriptManager1" runat="server"> </asp:ScriptMana ...

  8. Hibernate+struts+JqueryAjax+jSON实现无刷新三级联动

    看网上JqueryAjax三级联动的例子讲不是很全,代码也给的不是很全,给初学者带来一定的难度.小弟自己写了一个,可能有些地方不是很好,希望大家能够提出建议. 用的是Hibernate+struts2 ...

  9. Ajax做无刷新三级联动

    1.引入JS and Jquery包 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" " ...

随机推荐

  1. Android开发(二十六)——Application

    application package com.lgaoxiao.application; import java.util.LinkedList; import java.util.List; im ...

  2. python环境中运行程序

    运行Python程序,我们比较常用的是直接在Windows命令提示窗口或者Linux终端或shell窗口中,直接:Python *.py,或者在Linux环境下,在投不中,加入: #!/usr/bin ...

  3. 判断big endian和little endian的方法

    http://blog.sina.com.cn/s/blog_6ab0b9a80101awzr.html   不同体系的CPU在内存中的数据存储往往存在着差异.例如,Intel的x86系列处理器将低序 ...

  4. [原创]实现android知乎、一览等的开场动画图片放大效果

    代码下载地址: https://github.com/Carbs0126/AutoZoomInImageView 知乎等app的开场动画为:一张图片被显示到屏幕的正中央,并充满整个屏幕,过一小段时间后 ...

  5. android中的layoutparams参数使用的简单总结

    定义: 我们可以在Android的framework中的ViewGroup类里找到定义的类: public static class LayoutParams{...} 此类有如下注释: Layout ...

  6. iOS 日期处理 (Swift3.0 NSDate)

    处理日期的常见情景 NSDate -> String & String -> NSDate 日期比较 日期计算(基于参考日期 +/- 一定时间) 计算日期间的差异 拆解NSDate ...

  7. Spring3系列8- Spring 自动装配 Bean

    Spring3系列8- Spring 自动装配 Bean 1.      Auto-Wiring ‘no’ 2.      Auto-Wiring ‘byName’ 3.      Auto-Wiri ...

  8. (笔记)VC6插件安装--Unable to register this add-in because its DllRegisterServer returns an error

    在安装插件(如VC6显示行号的插件VC6LineNumberAddin.dll)的时候经常会提示"Unable to register this add-in because its  Dl ...

  9. MTNET 自用ios网络库开源

    短短两天就在https://git.oschina.net/gangwang/MTNET这里收获15个星 github 5星, 值得收藏! MTNET 自用ios网络库开源, 自用很久了,在数歀上架的 ...

  10. git pull 指定版本

    git init git remote add origin git@bitbucket.org:huashiyiqike/lstm-hf.git git pull origin master