用到了地区的数据库

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实现联动效果的更多相关文章

  1. asp.net DropDownList无刷新ajax二级联动实现详细过程

    只适合新手制作DropDownList无刷新ajax二级联动效果: 数据库实现,添加两表如图:表1,pingpai,表2,type,具体数据库实现看自己的理解: //页面主要代码: <asp:S ...

  2. Json 基于jQuery+JSON的省市联动效果

    helloweba.com 作者:月光光 时间:2012-09-12 21:57 标签: jQuery  JSON  Ajax  省市联动     省市区联动下拉效果在WEB中应用非常广泛,尤其在一些 ...

  3. html + ashx 实现Ajax省市联动

    基本思路:1.了解数据库中省和市的表结构及关联主键 2.创建html页面及select标签 3.通过ajax向ashx(一般处理程序)发送后台请求完成联动效果 表结构: 这里,开始创建一个命为demo ...

  4. jquery.cityselect.js基于jQuery+JSON的省市或自定义联动效果

    一.插件介绍 最早做省市联动的时候都特别麻烦,后来在helloweba的一篇文章中看到这个插件,很不错的,后来就一直用了. 省市区联动下拉效果在WEB中应用非常广泛,尤其在一些会员信息系统.电商网站最 ...

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

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

  6. JS省市区联动效果

    省市区联动下拉效果在WEB中应用非常广泛,尤其在电商网站最为常见.一般使用Ajax实现无刷新下拉联动.利用jQuery,通过读取JSON数据,实现无刷新动态下拉省市二(三)级联动效果. 首先我们可以看 ...

  7. MVC 下拉框联动效果(单选)

    下拉框联动效果,我们以部门--职位为例,选择部门时,关联到该部门的职位.下拉框的写法就不多说了,详细请参照前文. 视图: 其中,dept是部门的属性,deptlist是部门下拉框的属性,job是职位的 ...

  8. 基于jQuery+JSON的省市县 二级 三级 联动效果

    省市区联动下拉效果在WEB中应用非常广泛,尤其在一些会员信息系统.电商网站最为常见.开发者一般使用Ajax实现无刷新下拉联动.本文将讲述,利用jQuery插件,通过读取JSON数据,实现无刷新动态下拉 ...

  9. 基于jQuery+JSON的省市联动效果

    省市区联动下拉效果在WEB应用中使用非常广泛,尤其在一些会员信息系统.电商网站最为常见,开发者一般使用AJAX实现无刷新下拉联动. 本文将讲述利用jQuery插件,通过读取JSON数据,实现无刷新动态 ...

随机推荐

  1. Selenium2怎么调用selenium1中方法

    虽然selenium1.0已经成为过去时,现在都用selenium2.0,但是如果想要在代码中调用selenium1.0的api怎么办,看下面 WebDriver driver = new Chrom ...

  2. java截取日期范围并计算相差月数

    前两天,媳妇单位让整理excel的某一个单元格内两个日期范围的相差月数,本人对excel操作不是很熟练,便写了个小程序计算了一下,原始需求如下: 计算投资期限的范围,并得到期限范围的相差月数 思路1: ...

  3. 2016"百度之星"-资格赛

    //本题要求:(Ar*A2...An)%p,亦即[(A1*A2*...An)/(A1*A2*...Ar-1)]%p,由于A1*A2...An乘积过大,无法求得相除所得的结果 //我们需要用到乘法逆元( ...

  4. 在springmvc中使用hibernate-validate

    在springmvc.xml中加入 <!-- 国际化配置 --> <bean id="localeResolver" class="org.spring ...

  5. Beaufort密码

    博福特密码,是一种类似于维吉尼亚密码的替代密码,由弗朗西斯·蒲福(Francis Beaufort)发明.它最知名的应用是M-209密码机.博福特密码属于对等加密,即加密演算法与解密演算法相同 博福特 ...

  6. mybatis order by绑定的参数

    <select id = "queryByStartWithOrder" resultType="org.seckill.entity.SuccessKilled& ...

  7. ASP.NET 里的 JSON操作

    最近项目中需要用到 JSON操作,google了一下 找到了几个比较好的操作方法.... 一 .使用 mircosoft 提供的 .NET Framework 自带的 json操作方法 1. 使用Ja ...

  8. 25个实用的jquery技巧

    1. 去除页面的右键菜单   $(document).ready(function(){ $(document).bind(“contextmenu”,function(e){returnfalse; ...

  9. 查询各个商品分类中各有多少商品的SQL语句

    SELECT goods_category_id ,count(*) FROM `sw_goods` group by goods_category_id

  10. CSS选择器的权重与优先规则

    权重顺序 “important > 内联 > ID > 类 > 标签 | 伪类 | 属性选择 > 伪对象 > 继承 > 通配符”.   原文:http://w ...