java jsp ajax,该如何处理
阅读
我今天在页面上写了两个ajax提交方法 。只能输出一个方法的返回值。另外一个方法的返回值输不出来。?
不知道是这么回事。难道说ajax提交不能两个一起提交? 还是我哪里弄错了。方法如下:
- JScript code
//ajax 提交查询 省级列表 function fn_ajax_seachProvince(){ createXMLHttpRequest(); var url="provinceAndCity.do?method=seachProvinceForRegister"; _XMLHttpRequest.open("post",url,true); _XMLHttpRequest.onreadystatechange=fn_callBock_fn_ajax_seachProvince; _XMLHttpRequest.send(); } function fn_callBock_fn_ajax_seachProvince(){ //回调函数 //当XMLHttpRequest读取服务器响应完成 if (_XMLHttpRequest.readyState == 4) { //服务器响应正确(当服务器响应正确时,返回值为200的状态码) if (_XMLHttpRequest.status == 200) { //使用DIV显示服务器响应的文本 document.getElementById("province").innerHTML=_XMLHttpRequest.responseText; } else { ymPrompt.alert({message:'系统提示:查询区域列表错误.'}); } } else { //提示页面不正常 //window.alert("u60a8u6240u8bf7u6c42u7684u9875u9762u6709u5f02u5e38u3002"); } } //ajax 提交查询 市级列表 function fn_ajax_seachCity(){ window.alert("你好"); createXMLHttpRequest(); var url="provinceAndCity.do?method=seachCityForRegister&&provinceCd="+document.getElementById("provinceID").value; _XMLHttpRequest.open("post",url,true); _XMLHttpRequest.onreadystatechange=fn_callBock_fn_ajax_seachCity; _XMLHttpRequest.send(); } function fn_callBock_fn_ajax_seachCity(){ //回调函数 //当XMLHttpRequest读取服务器响应完成 if (_XMLHttpRequest.readyState == 4) { //服务器响应正确(当服务器响应正确时,返回值为200的状态码) if (_XMLHttpRequest.status == 200) { //使用DIV显示服务器响应的文本 document.getElementById("city").innerHTML=_XMLHttpRequest.responseText; } else { ymPrompt.alert({message:'系统提示:查询区域列表错误.'}); } } else { //提示页面不正常 //window.alert("u60a8u6240u8bf7u6c42u7684u9875u9762u6709u5f02u5e38u3002"); } }
大家帮我看看。谢谢了。
------解决方案--------------------
貌似不是两个一起提交的,这个算是级联的吧
要在前一个province改变后,去调city的function
------解决方案--------------------
这个用js就能实践了,在网上找一个省市js 很方便的,用的时候直接 window.onload = function(){
这里面是js里的开始函数 例如setep('${provice}','${city}','${county}')}
省市,地区可以是数据库里倒出来的,也可以自己写默认的例如
setep('北京','北京市','北京市')很方便的
------解决方案--------------------
学习了
------解决方案--------------------
ajax是异步通讯,不管ajax执行没执行完毕,都会接着执行ajax下面的语句,如果这时下面的语句用到了ajax的返回值,就会出现楼主说的现象。延迟5秒再执行ajax后面的语句,只能是个权宜之计。能不能在第一个ajax的回调函数里执行,城市的ajax读取呢。我没试过,我写过的级联不是这样写的。
------解决方案--------------------
也没什么,当省级的下拉菜单,发生变化时,onchange事件调用ajax设置市级下拉菜单。页面刚加载时,省级,市级都取默认值。
阅读
上一篇:在北京Java程序员工资多少?该如何处理 下一篇:返回列表