jquery遍历json对象集合详解
本文实例采用案例分析的方法介绍了jquery遍历json对象的三种情况,供大家参考,具体内容如下
第一个案例:jquery遍历json对象集合常用示例
jsp中
$.ajax({ url:"${applicationScope.rootpath}common/getContractPage.html?userConId=${userConId}", type:"post", dataType:"json", data:{}, success:function(jsonText){ if(jsonText){ varstatus=jsonText.status; varmsg=jsonText.msg; if(status=='500'){ //有异常的信息时 alert(msg); }else{ $.each(jsonText,function(i,item){ varpngPath=item[0]; varpngName=item[1]; }); } } } });
jsonText的格式:
{"status":"200","msg":[{"id":"1","name":"n1"},{"id":"2","name":"n2"}]} {"status":"500","msg":"异常信息"}
java中:
ListpngFileList=newArrayList();//某对象集合 if(null!=pngFileList&&pngFileList.size()>0){ JSONArraypngFileArray=JSONArray.fromObject(pngFileList); } if(null!=pngFileArray){ this.setTextAjax(pngFileArray.toString()); //异常的格式 //this.setTextAjax("{\"status\":\"500\",\"msg\":\""+errormsg+"\"}");//没有记录 /** *ajax返回html,包括json形式 * *@paramresponseContent */ publicvoidsetTextAjax(StringresponseContent){ try{ HttpServletResponseresponse=getHttpResponse(); response.setContentType("text/html"); response.setCharacterEncoding("UTF-8"); response.setHeader("Pragma","No-cache"); response.setHeader("Content-Type","text/html"); response.setHeader("Cache-Control","no-cache"); response.setDateHeader("Expires",0); PrintWriterout=response.getWriter(); out.print(responseContent); out.flush(); out.close(); }catch(IOExceptione){ e.printStackTrace(); } //ajaxResponse=newStringBufferInputStream(responseContent); }
第二个案例:jQuery遍历JSON对象
不说别的,直接贴代码:
<scriptsrc="js/jquery-1.6.4.js"type="text/javascript"></script> <scripttype="text/javascript"> $(document).ready(function(){ $("#Link").click(function(){ varobjson="[{Title:'Sjr',Content:'Library',summary:'summary'},{Title:'Sjr',Content:'Library',summary:[{sum0:'sum0'},{sum0:'sum1'},{sum0:'sum2'}]},{Title:'Sjr',Content:'Library',summary:[{sum0:'sum0'},{sum0:'sum1'},{sum0:'sum2'}]}]"; varobj=eval(objson); $(obj).each(function(index){ varval=obj[index]; if(typeof(val.summary)=="object"){ $(val.summary).each(function(ind){ alert(val.Title+""+val.Content+""+val.summary[ind].sum0); }); }else{ alert(val.Title+""+val.Content+""+val.summary); } }); }); }); </script>
第三个案例:jquery中遍历读取json串中的对象
{"result":null,"rows":[{"caishen":"东","fushen":"西北","huajiazi":"甲子","id":1,"nayin":"大海水","shengmen":"南","simen":"北","wugui":"西","xishen":"东南","yanggui":"西南","yingui":"东北"},{"caishen":"东北","fushen":"北","huajiazi":"乙丑","id":2,"nayin":"大林木","shengmen":"西北","simen":"西南","wugui":"东南","xishen":"东","yanggui":"西","yingui":"南"},{"caishen":"西","fushen":"东","huajiazi":"丙寅","id":3,"nayin":"石榴木","shengmen":"北","simen":"西北","wugui":"南","xishen":"东南","yanggui":"东北","yingui":"西南"}],"total":3}
//通过url获取json对象 $.post("json/godjson!godlist",function(data){ //data.rows返回的是json字符串。需要转换成json对象 varjson=eval(data.rows) //json变量现在就是一个数组对象,直接读取每个数组对象。结合属性进行输出 for(vari=0;i<json.length;i++){ alert(json[i].caishen+"---------"+json[i].xishen); } //记得返回的数据类型一定要是json类型 },"json");