三级联动时ajax的同步请求和异步请求处理

来源:互联网 发布:西安 国际程序员节 编辑:程序博客网 时间:2024/06/14 12:50

三级联动,一般情况我们考虑的只是在点击省的时候加载市,点击市的时候加载县/区,然而,我们有没有考虑这种情况,在修改的时候,我们不修改省直接修改市,或者不修改省和市而直接修改县/区,这时因为没有上一级的点击事件没法加载下一级,这时我们要用到ajax的同步请求。同步请求只需设置一个变量async: false,。


function zhankan(obj,provinceId,custId){

$("#adress_change"+obj).css("display","none");
$("#adress_shut"+obj).css("display","inline");

$("#adress"+obj).css("display","block");

//同步请求

$.ajax({ 
async: false, 
type: "post", 
url : "../useraddr/selectBaseRegion?shipProvinceSelector="+provinceId,
dataType: "json",
               contentType: "application/json; charset=utf-8",  
success : function(data) { 
if(data!=null){
                for (var i in data) {
                $("#city"+obj).append('<option value="' + data[i].regionId+ '">'+data[i].region+ '</option>');
               }


}); 

$.ajax({ 
async: false, 
type : "post", 
url : "../useraddr/selectBaseRegion?shipProvinceSelector="+custId, 
dataType: "json",
               contentType: "application/json; charset=utf-8",  
success : function(data) { 
if(data!=null){
                for (var i in data) {
                $("#qu"+obj).append('<option value="' + data[i].regionId+ '">'+data[i].region+ '</option>');
               }
            }
}
}); 
$.ajaxSetup({async: true});
}
原创粉丝点击