struts可以使基于json的ajax交互变得简单
1 $.post("../public_info/information!showCounties.action?dt="+new Date().getTime(),{"cityId":$("#work_city").val()}, 2 function(data){ 3 $("#work_county").empty(); 4 var json = eval(data); 5 if(json!=null){ 6 $("#work_county").attr("disabled",false); 7 }else{ 8 $("#work_county").attr("disabled",true); 9 } 10 $.each(json,function(i,n){ 11 $("#work_county").append(""); 12 }) 13 },"json")
但是在获取data之后可能会遇到解析的一些问题,如返回的data是以下格式:
{"authorities":null,"cities":[{"lid":350100,"locationName":"福州市","pid":350000},{"lid":350200,"locationName":"厦门市","pid":350000},{"lid":350300,"locationName":"莆田市","pid":350000},{"lid":350400,"locationName":"三明市","pid":350000},{"lid":350500,"locationName":"泉州市","pid":350000},{"lid":350600,"locationName":"漳州市","pid":350000},{"lid":350700,"locationName":"南平市","pid":350000},{"lid":350800,"locationName":"龙岩市","pid":350000},{"lid":350900,"locationName":"宁德市","pid":350000}],"cityId":0,"counties":null}
现在想提取cities对象的一些属性,如果直接用data.cities(对象.属性 适用于json格式)来获取肯定会出现错误。所以在此之前需要做一个转化将data转换成json格式而后才可用上述方法访问属性:
1 var json=(eval('('+data+')')).cities;
此篇仅仅是个人理解,希望高手指正!