在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. vue中指令写了一个demo

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  2. Maven(一)之Maven入门

    一.Maven简介 Maven可以翻译为“知识的积累”.“专家”.“内行”.作为Apache组织中的一个颇为成功的开源项目,Maven主要服务于基于Java平台的项目构建.依赖管理.和项目信息管理.M ...

  3. bzoj3252: 攻略 优先队列 并查集 贪心

    考场上自己yy出来的做法..... Code: #include<cstdio> #include<algorithm> #include<queue> #incl ...

  4. vue中的分页操作

    首先,先看分页的代码: 这里还需要进行操作: 1.分页操作主要传递俩个数据,total和pagenum,一个显示当前页面共有多少条数据,一个是翻页后的操作,看列表的数据能不能跟着改变,在进页面发送请求 ...

  5. nginx旧版本升级新版本

        比如我们现在所用的是 nginx 是1.4 版本,过了一段时间后我们有新的稳定版 1.6 问世,我们想升级到新的版本怎么办?           1.把新版本解压.安装,然后将 sbin/ng ...

  6. iOS开发——NSString小结

    1.创建常量字符串. NSString *astring = @"This is a String!";   2.创建空字符串,给予赋值. NSString *astring = ...

  7. PostgreSQL指定用户可访问的数据库pg_hba.conf

    进入指定目录: # cd /var/lib/pgsql/9.3/data/ 使用vi编辑pg_hba.conf文件 # vi pg_hba.conf 以上配置为所有IP及网关都允许访问,使用MD5认证 ...

  8. C++11之decltype

    使用场景 在C++中常常要用到非常长的变量名.假设已经有变量和你将使用的变量是一个类型.就可以使用decltypekeyword 来申明一样的类型变量. decltype原理      返回现有变量类 ...

  9. 独立python环境之virtualenv和virtualenvwrapper

    介绍 如果有一台測试机,多个人使用,有多个项目,不同项目可能python版本号不一样.须要的库不一样. 我们须要一个独立干净的python环境,互相隔离,互不影响. virtualenv能够帮我们解决 ...

  10. 分贝(dB)的理解

    分贝(dB,decibels)表达的是功率比(power ratio,P2/P1),而不是一个amount,P2>P1,分贝为正值,否则为负值.分贝是对数形式的,而不是线性形式的,也即 20 d ...