.each没有采取下一个对象

时间:2013-05-30 08:01:21

标签: javascript jquery ajax

我正在从网上接收JSON数据。我收到了数据并用JavaScript创建了一个对象。

以下是我在成功时从服务器获得的内容,该内容存储在数据变量中。现在的问题是,每次它只显示第一个括号的值时,我永远不会得到fnamelname的值。

[
    { "id": "3", "age": "4"},
    {"fname": "jhon", "lname": "peter"}
] 

这是我的代码

success:function(data){
    var obj = jQuery.parseJSON(data);
    //alert(data);
    $(obj).each(function (i,val){
        $.each(val,function(k,v){
            alert("k --> "+k+" v -->"+v);
        }
    }
}

3 个答案:

答案 0 :(得分:3)

$(obj).each(function (i,val){
    $.each(val,function(k,v){
        alert("k --> "+k+" v -->"+v);
    })
})

你确实错过了一些括号!

<强> Demo Here

答案 1 :(得分:0)

你需要找到obj的长度然后循环使用for循环来获取每个javascript对象。

for(var i=0;i<obj.length;i++){
console.log(obj[i]);
}

答案 2 :(得分:0)

试试这个:

success:function(data){
  var obj = jQuery.parseJSON(data);
  //alert(data);
  $(obj).each(function (i,val){
    for (var v in val) {
      if (val.hasOwnProperty(v)) {
         alert("k --> "+v+" v -->"+val[v]);
      }
    }
  }
}

这将打印出对象中的key =&gt;值对,同时遗漏了标准的Javascript对象属性。