在json中常常碰到这样的代码:

jquery $.each(data, function (index, value) {

   })

遍历处理data,可以是数组、DOM、json等,取决于直接给定或者ajax返回的类型

function (index, value)中index是当前元素的位置,value是值。

 // each处理一维数组

  var arr1 = [ "aaa""bbb""ccc" ];      
  $.each(arr1, function(i,val){      
      alert(i);   
      alert(val);
  });
  // 处理json数据,例如ajax的返回值     
  var obj = { one:1, two:2, three:3};      
 $.each(obj, function(key, val) {      
      alert(key); 
      alert(val); 
  });
 也就是说:obj的是一个对象:function里的key Value都是obj里的值;大多数情况下:data是后台返回的值;

$.each({a:3,b:'g'},function(index,value){alert('属性'+ index+ '的值是'+value);});

-----------------------------------------------------------------------------------------------------------------------

JQuery .each(function(i){怎么往里带参数?})

<script>
var xm=123,xt=456,xs=789;
$("ul li").each(function(i){
alert("i:"+i+" , xm:"+xm+" , xt: "+xt +" , xs: "+xs);
})
</script>

这就是,会对ul下的所有的li 进行循环:function里的i 是循环到的第几个li

第一个i的之后输出alert;第二个、第三个i 如此

-------------------------------------------------------------------------------------------

解析复杂的json时:

var color_ary=[{'id':'red','code':'01'},{'id':'blue','code':'02'},{'id':'green','code':'03'},{'id':'yellow','code':'04'},
             {'id':'black','code':'05'},{'id':'white','code':'06'},{'id':'orange','code':'07'}];
$.each(color_ary,function(index,item){a4+=item.id+":"+item.code+",";});
  //当数据为json格式时,可以如此来解析此json//这2种方法还是66的
  $.each(color_ary,function(index,item){a5+=color_ary[index].id+":"+color_ary[index].code+",";});
  //当数据为json格式时,也可以如此来解析此json
-------------------------------------------------------------------------------------------------------------
还有更复杂的解析:

1.例如后台返回的json数据如下

[{'id':"1","name":"2","user":{"name":"2","age":"18"}},{'id':"2","name":"2","user":{"name":"2","age":"18"}}]

2.前台解析代码如下

var obj = eval(s);
进行格式的转化,然后就能采用点运算符去取值,如obj[0].user.name;取出结果是2

---------------------------------------------------------------------------------------------------------------

$(function(){
$("#zhanshi input").click(function(){
alert("sda");
$("#ziliaoku_hero table").css("display","none");
$.ajax({
//传输方式
type:"post",
url:"herofenlei",
data:{"fenlei":$("#zhanshi input").val()},
dataTpye:"json",
success:function(data){
var json=eval(data);
var con;
$.each(json,function(index,item){
var s1=json[index].heroHear;
var s2=json[index].herowaihao;
con+="<td ><img src='"+s1+"'  width='64px' height='64px'  /><p style='font-size: 15px;'>"+s2+"</p></td>";
 
});
console.log(con);
$("#zhanshi11").html(con);
}
});  
});
});

随机推荐

  1. DefaultView 的作用(对DataSet查询出的来数据进行排序)

    DefaultView 的作用 收藏    一直以来在对数据进行排序, 条件查询都是直接重复构建SQL来进行, 在查询次数和数据量不多的情况下倒没觉得什么, 但慢慢得, 当程序需要对大量数据椐不同条件 ...

  2. 《剑指offer》合并两个排序的链表

    一.题目描述 输入两个单调递增的链表,输出两个链表合成后的链表,当然我们需要合成后的链表满足单调不减规则. 二.输入描述 两个递增排序的链表 三.输出描述 合并成一个递增排序的链表 四.牛客网提供的框 ...

  3. Out-of-Process iframes (OOPIFs)

    For Developers‎ > ‎Design Documents‎ > ‎ Out-of-Process iframes (OOPIFs) This page provides an ...

  4. HTML5的核心内容

    开发者可以放心地使用html5的理由 兼容性.HTML5在老版本的浏览器可以正常运行,同时支持HTML5的新浏览器也能正常运行HTML4,用HTML4创建出来的网站不是必须全部重建的. 实用性.HTM ...

  5. Linux服务器性能评估与优化

    一.影响务器性能因素 影响企业生产环境Linux服务器性能的因素有很多,一般分为两大类,分别为操作系统层级和应用程序级别.如下为各级别影响性能的具体项及性能评估的标准: (1)操作系统级别 内存: C ...

  6. HDFS 断点续传,写文件功能

    实际上这是个 HDFS 的工具类部分代码. 首先 public static Configuration configuration = null;public static FileSystem f ...

  7. Qt creator 编译错误 :cannot find file .pro qt

    事实上问题的解决的方法非常easy:就是Qt不支持中文的路径,把源代码的路径所有改成英文就可以解决这个问题. 首先问题发生在我执行网上的样例程序时,又一次构建编译也是出错.提示: Cannot fin ...

  8. syslog介绍-CS架构来采集系统日志

    syslog架构 Unix/Linux系统中的大部分日志都是通过一种叫做syslog的机制产生和维护的.syslog是一种标准的协议,分为客户端和服务器端,客户端是产生日志消息的一方,而服务器端负责接 ...

  9. 轻松掌握Ubuntu Linux的3D桌面快捷键使用

    视频下载地址: http://115.com/file/be4n23v6#linux3d.rar 轻松掌握Ubuntu Linux的3D桌面快捷键使用 高级3D桌面展示 本文出自 "李晨光原 ...

  10. 分享关于浏览器对象 history对象

    window.history.forward() == window.history.go(-1) //返回下一页 window.history.back() == window.history.go ...