BTW,请注意结贴率这个可以用for in来解决问题。类似foreach
请看以下代码:重点我会注释
var t = [{ 
        "TopicTypesTid": [ { "name": "登山探险", "tid": 11 }], 
        "ticketJdinfos": [{"area_flag": 1, "city": "安庆", "contact": "", "cover_pic": "", "qpaddress": "", "shelves": 0, "sort": 0, "tid": 11 }, 
                {"area_flag": 1, "city": "安庆", "contact": "", "cover_pic": "", "shelves": 0, "sort": 0, "tid": 10 }, 
                {"area_flag": 1, "city": "安庆", "contact": "", "cover_pic": "", "description": "[B@39bb1a", "province": "安徽", "qpaddress": "", "shelves": 0, "sort": 0, "tid": 4}, 
                {"area_flag": 1, "city": "安庆", "contact": "", "cover_pic": "", "description": "[B@18d362a", "qpaddress": "", "shelves": 0, "sort": 0, "tid": 11}]
    }];
    
    for (var i in t) {
        // 这里是var t = [{}]里面的内容,目前只有一个对象
        for (var j in t[i]) {
            // 这里是"TopicTypesTid"和"ticketJdinfos"指向的对象
            for (var x in t[i][j]) {
                // 这里是"TopicTypesTid"和"ticketJdinfos"指向的对象里面中括号数组包含的对象
                for (var y in t[i][j][x]) {
                    // 这里是"TopicTypesTid"和"ticketJdinfos"指向的对象里面中括号数组包含的对象里面的属性name,tid,city。。
                    alert(t[i][j][x][y]);
                }
            }
        }
    }
不懂请追问

解决方案 »

  1.   

    $.each(data,funciton(i,t){
    //怎么能i==‘ticketJdinfos’呢  既然是each  i肯定是个变量呀
    alert(t) //看看alert出来的是什么  ,然后里面都是JsonArray
    var value=[]
    value=t['ticketJdinfos'];
    $.each(value,function(i,p){
    alert(p); //现在alert出来的不就是每一个数组了吗,然后获取里面的每一个值
    alert(p['city']);
    }
    }
      

  2.   

    这不就是  x 和 y 互换么假定 你写数组是 a[x][y] == ...  那是你第一1种
                                  a[y][x] ==...   不就变成你第2种了