Ajax实现联动效果
用到了地区的数据库
html代码:
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title></title>
<script src="script/jquery-1.7.1.js"></script>
<script language="javascript">
$(document).ready(function () {
fillProv();//加载省份,加载省份的函数中调用了加载城市的函数,记载城市的函数调用了加载县市区的函数(为了防止异步传输页面加载不出东西)
//添加事件
//给省份添加事件
$("#ddlProv").change(function () {
fillCity();
});//change
$("#ddlCity").change(function () {
fillCountry();
});//change
});//ready function fillProv() {
$.ajax({
url: "LianDong.ashx",
data: { parent: "0001" },
type: "POST",
dataType: "XML",
success: function (data) {
//解析XML
$("#ddlProv").empty();//加载之前清空下拉
var arr = $(data).find("item");
for (var i = 0; i < arr.length; i++) {
var code = arr.eq(i).attr("code");
var name = arr.eq(i).attr("name");
//显示HTML
//var op = "<option value='" + code + "'>" + name + "</option>";
$("#ddlProv").append("<option value='" + code + "'>" + name + "</option>");
};//for
fillCity();
}//success
});//ajax
}
function fillCity()
{
var parent=$("#ddlProv").val();
$.ajax({
url: "LianDong.ashx",
data: { parent: parent },
type: "POST",
dataType: "XML",
success: function (data)
{
$("#ddlCity").empty();//加载之前清空下拉
//解析
var arr = $(data).find("item");
for (var i = 0; i < arr.length; i++) {
var code = arr.eq(i).attr("code");
var name = arr.eq(i).attr("name");
//显示HTML
$("#ddlCity").append("<option value='" + code + "'>" + name + "</option>");
}//for
fillCountry();
}//success
});//ajax
}
function fillCountry()
{
var parent = $("#ddlCity").val();
$.ajax({
url: "LianDong.ashx",
data: { parent: parent },
type: "POST",
dataType: "XML",
success: function (data)
{
$("#ddlCountry").empty();//加载之前清空下拉
//解析
var arr = $(data).find("item");
for (var i = 0; i < arr.length; i++) {
var code = arr.eq(i).attr("code");
var name = arr.eq(i).attr("name");
//显示
$("#ddlCountry").append("<option value='" + code + "'>" + name + "</option>");
}
}//success
});//ajax
} </script>
</head>
<body>
<form id="form1" runat="server">
<div>
<asp:DropDownList ID="ddlProv" runat="server"></asp:DropDownList>
<asp:DropDownList ID="ddlCity" runat="server"></asp:DropDownList>
<asp:DropDownList ID="ddlCountry" runat="server"></asp:DropDownList>
</div>
</form>
</body>
</html>
服务端代码:
public class LianDong : IHttpHandler {
private MyDBDataContext _Context = new MyDBDataContext();
public void ProcessRequest (HttpContext context) {
//获取请求过来的值
var s = context.Request["parent"];
StringBuilder sb = new StringBuilder();//命名空间using System.Text;
string rel = null;
//根据请求过来的值查询相应的数据
var query = this._Context.ChinaStates.Where(r => r.ParentAreaCode == s);
if (query.Count()>)
{
foreach (ChinaStates data in query)
{
sb.Append("<item code='" + data.AreaCode + "' name='" + data.AreaName + "'/>");
}
}
//回发xml
rel = sb.ToString();
context.Response.Write("<?xml version='1.0'?>");
context.Response.Write("<root>");
context.Response.Write(rel);
context.Response.Write("</root>");
context.Response.End();
}
Ajax实现联动效果的更多相关文章
- asp.net DropDownList无刷新ajax二级联动实现详细过程
只适合新手制作DropDownList无刷新ajax二级联动效果: 数据库实现,添加两表如图:表1,pingpai,表2,type,具体数据库实现看自己的理解: //页面主要代码: <asp:S ...
- Json 基于jQuery+JSON的省市联动效果
helloweba.com 作者:月光光 时间:2012-09-12 21:57 标签: jQuery JSON Ajax 省市联动 省市区联动下拉效果在WEB中应用非常广泛,尤其在一些 ...
- html + ashx 实现Ajax省市联动
基本思路:1.了解数据库中省和市的表结构及关联主键 2.创建html页面及select标签 3.通过ajax向ashx(一般处理程序)发送后台请求完成联动效果 表结构: 这里,开始创建一个命为demo ...
- jquery.cityselect.js基于jQuery+JSON的省市或自定义联动效果
一.插件介绍 最早做省市联动的时候都特别麻烦,后来在helloweba的一篇文章中看到这个插件,很不错的,后来就一直用了. 省市区联动下拉效果在WEB中应用非常广泛,尤其在一些会员信息系统.电商网站最 ...
- Asp.Net下,基于Jquery的Ajax二级联动
最近做一个项目,要求实现二级联动效果.背景为:通过学院的选择,联动出专业选项.起初想直接用微软的控件实现Ajax效果,但是DropDownList控件会自动触发PostBack,在后台根本就不好控制, ...
- JS省市区联动效果
省市区联动下拉效果在WEB中应用非常广泛,尤其在电商网站最为常见.一般使用Ajax实现无刷新下拉联动.利用jQuery,通过读取JSON数据,实现无刷新动态下拉省市二(三)级联动效果. 首先我们可以看 ...
- MVC 下拉框联动效果(单选)
下拉框联动效果,我们以部门--职位为例,选择部门时,关联到该部门的职位.下拉框的写法就不多说了,详细请参照前文. 视图: 其中,dept是部门的属性,deptlist是部门下拉框的属性,job是职位的 ...
- 基于jQuery+JSON的省市县 二级 三级 联动效果
省市区联动下拉效果在WEB中应用非常广泛,尤其在一些会员信息系统.电商网站最为常见.开发者一般使用Ajax实现无刷新下拉联动.本文将讲述,利用jQuery插件,通过读取JSON数据,实现无刷新动态下拉 ...
- 基于jQuery+JSON的省市联动效果
省市区联动下拉效果在WEB应用中使用非常广泛,尤其在一些会员信息系统.电商网站最为常见,开发者一般使用AJAX实现无刷新下拉联动. 本文将讲述利用jQuery插件,通过读取JSON数据,实现无刷新动态 ...
随机推荐
- C. Coloring Trees DP
传送门:http://codeforces.com/problemset/problem/711/C 题目: C. Coloring Trees time limit per test 2 secon ...
- poj-3739. Special Squares(二维前缀和)
题目链接: I. Special Squares There are some points and lines parellel to x-axis or y-axis on the plane. ...
- codeforces 101C C. Vectors(数学)
题目链接: C. Vectors time limit per test 1 second memory limit per test 256 megabytes input standard inp ...
- POJ 1182 食物链 (三态种类并查集)
这题首先不说怎么做,首先要提醒的是..:一定不要做成多组输入,,我WA了一个晚上加上午,,反正我是尝到苦头了,,请诸君千万莫走这条弯路..切记 这题是上一题(Find them and Catch t ...
- JMeter学习(十九)JMeter测试MongoDB
JMeter测试MongoDB性能有两种方式,一种是利用JMeter直接进行测试MongoDB,还有一种是写Java代码方式测试MongoDB性能. 第一种方法 1.编写Java代码,内容如下: pa ...
- linux --备份oracle
1.exp\imp 导入导出命令使用exp username/pwd@sid file=path.dmp owner=user 不导出表数据:rows=n举例:exp iflashbuy/qwerwh ...
- java 12-2 String和StringBuffer之间的转换
为什么我们要讲解类之间的转换: A -- B的转换 我们把A转换为B,其实是为了使用B的功能. B -- A的转换 我们可能要的结果是A类型,所以还得转回来. String和StringBuffer的 ...
- 09Spring_AOP介绍和java本身的动态代理以及cglib代理
Aspect Oriented Programming 面向切面编程 1. 业界 AOP 实际上 OOP (面向对象编程 ) 延伸 ---- OOP编程语言. AOP设计思想,下面给出一张AOP的设 ...
- 19Mybatis_订单商品数据模型分析
这篇文章是对订单商品数据模型进行分析(会给出分析思路),有四张表.这篇文章是后续文章的基础,因为后续的文章要针对这个数据模型(四张表)进行一对一,一对多,多对多进行查询. 我们以后会碰到各种各样的数据 ...
- sql 索引 填充因子(转)
和索引重建最相关的是填充因子.当创建一个新索引,或重建一个存在的索引时,你可以指定一个填充因子,它是在索引创建时索引里的数据页被填充的数量.填充因子设置为100意味着每个索引页100%填满,50%意味 ...