PHP语言 -- 三级联动

AreaCode  AreaName ParentAreaCode

<script src="jquery-1.11.2.min.js"></script>
<script src="sanji.js"></script>
<body> <h1>三级联动</h1> <div id="sanji"></div> </body>

sanji.js

Ajax的同步,同步就是指在AJAX处理数据的时候,必须等到处理完成才能执行的语句,

Ajax的异步,异步就是指在AJAX处理数据的时候,不用等到处理完,下面的语句就可以执行

非Ajax 

同步在交换信息的时候,必须等到对方确认接收之后在发送下一条

异步在交换信息的时候,只管向对方发送,不用管对方有没有答复

线程上

同步相当于单线程处理一个请求

异步相当于多线程同时处理多个请求

$(document).ready(function(e){

//在DIV里面早三个下拉
$("#sanji").html("<select id='sheng'></select><select id='shi'></select><select id='qu'></select>");

//填充数据
FillSheng(); //填充省的数据
FillShi(); //填充市的数据
FillQu(); //填充区的数据

//填充省的方法
function FillSheng()
{
var code ="0001"; //省的父级代号

//调用AJAX查询省的数据
$.ajax({
async:false, //将异步AJAX变成同步AJAX url:
"chuli.php", data:{code:code}, type:"POST", datatype:"TEXT", success:function(){ //拆分字符串,返回行的数组
var hang = data.split("|");

var str="";
for(var i=0;i<hang.lenght;i++)
{
var lie = hang[i].split("^");

str+="<option value='"+lie[0]+"'>"+lie[1]+"</option>";
}
//将所有的option放到省下拉列表里面
$("#sheng").html(str);
}

});
}


function FillShi()
{
var code =$("#sheng").val(); //市的父级代号

//调用AJAX查询省的数据
$.ajax({

async:false, url:"chuli.php", data:{code:code}, type:"POST", datatype:"TEXT", success:function(){ //拆分字符串,返回行的数组
var hang = data.split("|");

var str="";
for(var i=0;i<hang.lenght;i++)
{
var lie = hang[i].split("^");

str+="<option value='"+lie[0]+"'>"+lie[1]+"</option>";
}
//将所有的option放到市下拉列表里面
$("#shi").html(str);
}

});

}


function Fillqu()
{

var code =$("#shi").val(); //区的父级代号

//调用AJAX查询省的数据
$.ajax({

async:false, url:"chuli.php", data:{code:code}, type:"POST", datatype:"TEXT", success:function(){ //拆分字符串,返回行的数组
var hang = data.split("|");

var str="";
for(var i=0;i<hang.lenght;i++)
{
var lie = hang[i].split("^");

str+="<option value='"+lie[0]+"'>"+lie[1]+"</option>";
}
//将所有的option放到市下拉列表里面
$("#qu").html(str);
}

});

}

//当省的选中发生变化的时候,去改变市和区
$("#sheng").change(function(){
FillShi();
FillQu();
})
//当市的选中发生变化的时候去改变区
$("#shi").change(function(){
FillQu();
})
});

chuli.php

<?php

include "DBDA.php";

$db = new DBDA();

$pcode = $_POST["code"];

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

echo $db->StrQuery($sql);
原文地址:https://www.cnblogs.com/yifangtongxing/p/5434473.html