用ajax实现三级联动

 1 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
 2 <html xmlns="http://www.w3.org/1999/xhtml">
 3 <head>
 4 <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
 5 <title>无标题文档</title>
 6 <script src="../jq.js"></script>
 7 <script src="sanji.js"></script>
 8 </head>
 9
10 <body>
11 <h1>三级联动</h1>
12 <div id="sanji"></div>
13 </body>
14 </html>

07:38:10

  1 $(document).ready(function(e) {
  2     //在div里面造三个下拉
  3     $("#sanji").html("<select id=‘sheng‘></select><select id=‘shi‘></select><select id=‘qu‘></select>");
  4     //填充数据
  5     FillSheng();//填充省
  6     FillShi();//填充市
  7     FillQu();//填充区
  8
  9     //同步异步,同步就是是指在AJAX处理数据的时候,必须等到处理完成才能执行下面的语句,异步就是在AJAX处理数据的时候,不用等到处理完,下面的语句就可以执行
 10     //同步在交换信息的时候,必须等到对方确认接收之后再发送下一条
 11     //异步在交换信息的时候,只管向对方发送,不用管对方有没有答复
 12     //表现在线程上,同步相当于单线程处理一个请求,异步相当于多线程同时处理多个
 13
 14     //填充省的方法
 15     function FillSheng()
 16     {
 17         var code="0001";
 18         $.ajax({
 19             async:false,//ajax变为同步
 20             url:"ChuLi.php",
 21             data:{code:code},
 22             type:‘POST‘,
 23             dataType:"TEXT",
 24             success: function(data){
 25
 26                 var hang=data.split("|");
 27                 var str="";
 28                 for(var i=0;i<hang.length;i++)
 29                 {
 30                     var lie=hang[i].split("^");
 31
 32                     str+="<option value=‘"+lie[0]+"‘>"+lie[1]+"</option>"
 33
 34
 35
 36                 }
 37
 38                 //将所有的option省下拉里面
 39                     $("#sheng").html(str);
 40
 41
 42
 43             }
 44
 45
 46
 47
 48
 49
 50             });
 51
 52
 53         }
 54
 55         function FillShi()
 56     {
 57         var code=$("#sheng").val();
 58         $.ajax({
 59             async:false,//ajax变为同步
 60             url:"ChuLi.php",
 61             data:{code:code},
 62             type:‘POST‘,
 63             dataType:"TEXT",
 64             success: function(data){
 65
 66                 var hang=data.split("|");
 67                 var str="";
 68                 for(var i=0;i<hang.length;i++)
 69                 {
 70                     var lie=hang[i].split("^");
 71
 72                     str+="<option value=‘"+lie[0]+"‘>"+lie[1]+"</option>"
 73
 74
 75
 76                 }
 77
 78                 //将所有的option省下拉里面
 79                     $("#shi").html(str);
 80
 81
 82
 83             }
 84
 85
 86
 87
 88
 89
 90             });
 91
 92
 93         }
 94         function FillQu()
 95     {
 96         var code=$("#shi").val();
 97         $.ajax({
 98             async:false,//ajax变为同步
 99             url:"ChuLi.php",
100             data:{code:code},
<?PHP

include("class.php");
$db=new DBDA();

$pcode=$_POST["code"];

$sql="select AreaCode,AreaName from ChinaStates where ParentAreaCode=‘{$pcode}‘" ;

$str=$db->StrQuery($sql);

echo $str; 

101             type:‘POST‘,
102             dataType:"TEXT",
103             success: function(data){
104
105                 var hang=data.split("|");
106                 var str="";
107                 for(var i=0;i<hang.length;i++)
108                 {
109                     var lie=hang[i].split("^");
110
111                     str+="<option value=‘"+lie[0]+"‘>"+lie[1]+"</option>"
112
113
114
115                 }
116
117                 //将所有的option省下拉里面
118                     $("#qu").html(str);
119
120
121
122             }
123
124
125
126
127
128
129             });
130
131
132         }
133         //当省的选中发生变化的时候,去改变市和区
134     $("#sheng").change(function(){
135             FillShi();
136             FillQu();
137         })
138
139     //当市的选中发生变化的时候,去改变区
140     $("#shi").change(function(){
141             FillQu();
142         })
143 });
时间: 2024-08-04 14:13:48

用ajax实现三级联动的相关文章

PHP ajax 实现三级联动

在一个单独JS页面中,利用ajax实现三级联动,做成一个三级联动形式,以便于以后随时调用 JS代码: 1 $(document).ready(function(e) { 2 $("#sanji").html("<select id='sheng'></select><select id='shi'></select><select id='qu'></select>"); 3 4 //填充内容

AJAX省市区三级联动下拉列表实现 JAVA开发

转载自:http://blog.sina.com.cn/s/blog_a48af8c001011lx1.html 例子--District Picker            http://fengyuanchen.github.io/distpicker/ 此小程序的功能主要是采用异步请求方式从数据库中调取省市区信息显示到下拉列表: 代码如下: 建立数据库中的代码和一些配置文件信息就省略了,主要有JavaScript中的代码为: $(document).ready(function(){   

完整的Ajax及三级联动小练习

Ajax结构: var name = $("#text_1").val(); $.ajax({ url: "Ashxs/Handler.ashx",//一般处理程序路径 data: { "name": name },//要传输的数据,冒号前面是键名后面是要传输的数据,如果有多条数据在大括号内用逗号拼接 type: "post",//传输方式 dataType: "json",//返回数据类型 success

Jquery Ajax + php 三级联动实例

sanji.php <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv=&quo

ajax省市区三级联动

jdbc+servlet+ajax开发省市区三级联动 技术点:jdbc操作数据库,ajax提交,字符拦截器,三级联动 特点:局部刷新达到省市区三级联动,举一反三可以做商品分类等 宗旨:从实战中学习 博客讲解是按照两级联动,但下载的资源是三级联动含sql文件. 效果图: 首页核心代码: [html] view plain copy <% List<HashMap<String,Object>> maps = ConnectionUtil.findProvinces(); pag

AJAX实现三级联动

省市区三级联动插件: 主页面:为方便使用,不用写过多代码,只写一个id为sanji的div,若别的页面要用,只需写一个id为sanji的div,加载上jQuery与sanji.js文件即可 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xml

ajax实现三级联动下拉菜单

先不要着急去实现功能,我们第一步首先要理清思路,想要实现三级联动,首先要有三个下拉框,然后点击第一个下拉菜单,可以联动到第二个,点击第二个联动到第三个,实现省市区的三级联动,用到的数据表如下: 为了以后可以随时拿出来用,我们先在主页面建立一个div叫sanji,然后用一个js页面来引用: 主页面引入Jquery和js: <title>无标题文档</title> <script src="jquery-3.2.0.min.js"></script

ajax地址三级联动下拉表

<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <

Ajax商品分类三级联动实现

思路分析: 效果:当页面加载时,利用ajax异步向后台请求数据,加载一级商品类别,当选择一级商品时加载二级商品,选择二级商品加载三级商品. 实现: 1.当拿到数据后加载pid为0的商品,并动态创建option将商品追加到一级菜单中,并设置value值 2.当选择一级商品时加载pid=当前id的商品,并创建option将商品追加到二级菜单中,并设置value值 3.当选择二级商品时加载pid=当前id的商品,并创建option将商品追加到三级菜单中,并设置value值 页面效果: 1 $(func