第三个匿名函数执行不进去是怎么回事
JScript code
$("#prov").change(function() {
//$("#city").html("");
$("#city").children().remove();
$("#city").append($("<option></option>").val("").text("--请选择--"));
$("#area").children().remove();
$("#area").append($("<option></option>").val("").text("--请选择--"));
$.get("${pageContext.request.contextPath}/area/areaList.action", {areaId:this.value, _:new Date().getTime()}, function(data) {
alert(data);
$.each(data, function() {
$("#city").append($("<option></option>").val(this.id).text(this.name));
});
}, "json");
});
------解决方案--------------------function(data) {
alert(data);
$.each(data, function() {
$("#city").append($("<option></option>").val(this.id).text(this.name));
});
你是说发完AJAX请求回调执行的这里?
------解决方案--------------------$.get函数需要服务器正确返回200才会执行
------解决方案--------------------
------解决方案--------------------${pageContext.request.contextPath}/area/areaList.action这个路径有问题
$.get只有动态页没有问题才会执行回调
或者你的动态页返回的json格式是怪异模式的,而jq使用了1.4+版本也会不执行success回调,具体参考
jquery datatype json
建议先调试好动态页再使用$.get,要不使用$.ajax,这样可以配置error回调
------解决方案--------------------JScript code$("#prov").change(function() {
//$("#city").html("");
$("#city").children().remove();
$("#city").append($("<option></option>").val("").text("--请选择--"));
$("#area").children().remove();
$("#area").append($("<option></option>").val("").text("--请选择--"));
$.get("${pageContext.request.contextPath}/area/areaList.action", {areaId:this.value, _:new Date().getTime()}, function(data) {
alert(data);
$.each(data, function() {
$("#city").append($("<option></option>").val(this.id).text(this.name));
});
}, "json");
});
------解决方案--------------------$.each(data, function(i) {
$("#city").append($("<option></option>").val(data[i].id).text(data[i].name));
});
------解决方案--------------------