求助!!!ajax+jquery 省市级联问题。。。。。

我嘞个去 2010-12-13 02:21:12

我的代码是这样的:
var params = {"provinceId":provinceId};
$.ajax({
type: "POST",
url: "<s:url value="cityList">"
data: params,
dataType: "json",
success: function(rs) {
var cities = rs.cityList;
var city = $("#cityId");
city.empty();
city.append("<option value='0' selected='selected'>--市--</option>");
$(cities).each(function(i){
city.append("<option value='" + this.id + "'>"+ this.name +"</option>");
});
},
error: function() {
alert("failure!");
}
})

每当我选了省之后就会弹出failure! 这有可能是那错了? sql语句没错。
由于我对ajax和jqury不太熟悉,望大虾赐教赐教。
...全文
286 10 打赏 收藏 转发到动态 举报
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
liudeqing2008 2010-12-13
  • 打赏
  • 举报
回复
楼主可以不用那样的写法!你可以在后台直接根据传过去的省查询到相应的城市 然后拼接成下拉菜单的option(元素)返回给客户端的时候直接返回一个字符串就可以了!至于说Ajax怎么实现我这有一段代码楼主可以参考一下!
$(function(){
$("select[name='text_sheng']").change(function(){
if($("select[name='text_sheng']").val()!='')
{

$.post("TestInfoGetAction.do",{TestSite:$("select[name='td_Place']").val(),Type:"kc",name:"td_Name"
},function(n){
//将页面显示城市的div置为空
document.getElementById("SelDiv").innerHTML="";
//将程序返回的结果字符串附加到div层上边!
document.getElementById("SelDiv").innerHTML=n;

});
$.post("TestInfoGetAction.do",{TestSite:$("select[name='td_Place']").val(),Type:"js",name:"td_Teacher"
},function(n){
document.getElementById("TeacherDiv").innerHTML="";
document.getElementById("TeacherDiv").innerHTML=n;

});
}

});
});
笨翔 2010-12-13
  • 打赏
  • 举报
回复
服务器是正常处理的吗 报异常了吗
我嘞个去 2010-12-13
  • 打赏
  • 举报
回复
[Quote=引用 7 楼 wychjl 的回复:]
看看服务器接收到请求没有
[/Quote]

收到了!!! 纠结的....
笨翔 2010-12-13
  • 打赏
  • 举报
回复
看看服务器接收到请求没有
我嘞个去 2010-12-13
  • 打赏
  • 举报
回复
[Quote=引用 5 楼 wychjl 的回复:]
是不是url的问题
[/Quote]
url没有问题的!!!
笨翔 2010-12-13
  • 打赏
  • 举报
回复
是不是url的问题
我嘞个去 2010-12-13
  • 打赏
  • 举报
回复
[Quote=引用 3 楼 huangchbao 的回复:]
你的返回值写到$ajax方法里面没错

你把error: function() {
alert("failure!");
}
这个方法也写到$ajax方法里面了..他能不执行么.执行完回调函数他会执行这个方法的..你给他扔到外面就行了、、
[/Quote]
仍外边我试了 会报错的! 我仍里边到没错了! 而且我在success: function(rs)里边也调试了,没进这个方法.....
huangchbao 2010-12-13
  • 打赏
  • 举报
回复
你的返回值写到$ajax方法里面没错

你把error: function() {
alert("failure!");
}
这个方法也写到$ajax方法里面了..他能不执行么.执行完回调函数他会执行这个方法的..你给他扔到外面就行了、、
我嘞个去 2010-12-13
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 huangchbao 的回复:]
error: function() {
alert("failure!");
}
都写到你的方法方法里面了、、他当然会调用了

[/Quote]
不是吧...json返回的值应该是在$ajax()里边吧!
huangchbao 2010-12-13
  • 打赏
  • 举报
回复
error: function() {
alert("failure!");
}
都写到你的方法方法里面了、、他当然会调用了

var params = {"provinceId":provinceId};
$.ajax({
type: "POST",
url: "<s:url value="cityList">"
data: params,
dataType: "json",
success: function(rs) {
var cities = rs.cityList;
var city = $("#cityId");
city.empty();
city.append("<option value='0' selected='selected'>--市--</option>");
$(cities).each(function(i){
city.append("<option value='" + this.id + "'>"+ this.name +"</option>");
});
},
})


error: function() {
alert("failure!");
}

81,092

社区成员

发帖
与我相关
我的任务
社区描述
Java Web 开发
社区管理员
  • Web 开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧