json数组中的数组

时间:2012-05-23 15:25:58

标签: javascript jquery ajax json

我的结果如

{"ID":1022,"Type":"type1","Name":"name1","Values":[{"ID":3540,"Name":"1"},{"ID":3541,"Name":"2"},{"ID":3542,"Name":"cb"}]}

所以成功我得到了这样的功能

   success: function(data) {
            $.each(data, function() {
                $('#properties').append(
                this.ID + "," +
                this.Name + "," +

                this.type + "," +
                    this.values
                );
            });
        }

但"价值观"是另一个数组,所以如何显示它?

4 个答案:

答案 0 :(得分:1)

我相信this.Values[0].ID应该正确地从第一个元素返回ID。

您还可以遍历数组中的每个项目并以相同的方式访问它。

for (var i = 0; i < this.Values.length; i++) {
    alert(this.Values[i].ID); //Show an alert for each ID.
}

答案 1 :(得分:1)

//get the total length of values array.
this.Values.length;

for (  var i = 0 ; i < this.Values.length; i++ ){
 var resultId= this.Values[i].ID;
 var resultName = this.Values[i].Name;
}

这很有效。

答案 2 :(得分:0)

this.values[0].ID可能有用,但是,我不完全确定。不过我觉得尝试没什么坏处。

答案 3 :(得分:0)

我不太清楚这个内部函数的价值是什么,但它可能不是你想要的。为了在创建函数时将变量传递给函数,而不是在调用函数时,应该使用另一个函数将其包装起来:

{
    success: function(data) {
        $.each(data, (function(dat) { return function(index, value) {
            $('#properties').append(
               value.ID + "," +
               value.Name + "," +
               dat.type + "," +
               dat.values
            );
        }; ) (data));
    }
};