省市县三级联动
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
Ajax+JS+Xml无刷新省市县三级联动(使用母版页,修改个人信息)
前言:
这是我第一次做省市县三级联动,所以体会很深就把我所遇到的情况给总结了一下,仅供大家参考!(其中,有许多资料是我从网上下载的。)
要想无刷新我们的配置ajax所以在web.config中添加ajax的配置:
首先:我们在页面放三个DropDownList控件
Font-Size="12px">
Width="60px"Font-Size="12px">
Width="60px"Font-Size="12px">
然后再添加三个Lable控件,这是为了接收dropdownlist控件中的值
然后再在页面的源码中的page中添加enableEventValidation="false"这样就可以解决回调会回调函数无效这个错误。
当然我们要在页面中调用js代码。
上面是页面中要处理的工作。
我们在来看js代码
AdminLeaquerMessage.js代码:
function CityResult(parent_id,objDropDownList){
//alert(parent_id.text);
//alert(document.getElementById("lbl_provice").value);
document.getElementById("lbl_provice").value = parent_id.text;
document.getElementById("lbl_provice_id").value = parent_id.value;
SaLeaMessage.BindCity(parent_id.value,objDropDownList,get_City_Result_CallBack);
}
function get_City_Result_CallBack(response)
{
if (response.value != null)
{
var ds = response.value;
var first_city;
var first_city_id;
//绑定城市
if(ds != null && typeof(ds) == "object" && ds.Tables != null){ document.getElementById("DropDownList2").length = 0;
for(var i=0; i var name=ds.Tables[0].Rows[i].Text; var id=ds.Tables[0].Rows[i].Value; if(i==0){first_city=name;first_city_id=id}; document.getElementById("DropDownList2").options.add(new Option(name,id)); } //每次省选择以后,赋省下第一个城市值 document.getElementById("lbl_city").innerText=first_city; //绑定地区 if(first_city_id&&typeof(first_city_id)!='undefined') SaLeaMessage.BindArea(first_city_id,DropDownList3',get_Area_Result_CallBack); else{ document.getElementById("DropDownList3").length=0; } } } } function AreaResult(parent_id,objDropDownList){ document.getElementById("lbl_city").innerText=parent_id.text; SaLeaMessage.BindArea(parent_id.value,objDropDownList,get_Area_Result_CallBack); } function get_Area_Result_CallBack(response) { if(response.value !=null){ var ds=response.value; var first_area; var first_area_id; if(ds !=null && typeof(ds)=="object" && ds.Tables !=null){ document.getElementById("DropDownList3").length=0; for(var i=0;i var name=ds.Tables[0].Rows[i].Text; var id=ds.Tables[0].Rows[i].Value; if(i==0)