[{"mapTypeId":10047,"mapTypeName":"文件档案部",
"maps":[{"mapId":10002"mapName":"时间到了地方"}
,{"mapId":10021"mapName":"test_03-21"}
]
}
,{"mapTypeId":10054,"mapTypeName":"慈善A部",
"maps":[{"mapId":10009"mapName":"阿松岛换个环境来"}
]
}
]
后台可以得到这种数据,前台如何接收?求高手解答。
注:一个部门对应多个小部门的多个属性,不是树状结构。

解决方案 »

  1.   

    mapId与mapName中间是不是少个逗号
    code如下:
    function callBack(data){
    var d = eval(data);
    var l =d.length;
    for(index = 0;index<l;index++){
    document.write(d[index].mapTypeId+" "+d[index].mapTypeName);
    var ll = d[index].maps;
    for(var i=0;i<ll.length;i++){
    document.write((d[index].maps)[i].mapid+" "+(d[index].maps)[i].mapName);
    }
    }
    }
      

  2.   

    前台获取数据
    var json="[{"mapTypeId":10047,"mapTypeName":"文件档案部",
        "maps":[{"mapId":10002"mapName":"时间到了地方"}
                ,{"mapId":10021"mapName":"test_03-21"}
                ]
    }
    ,{"mapTypeId":10054,"mapTypeName":"慈善A部",
        "maps":[{"mapId":10009"mapName":"阿松岛换个环境来"}
                ]
    }
    ]"

    var newJson=eval(json);
    获取具体的 
    newJson[0].mapTypeId  ;
    newJson[0].mapTypeName;
    newJson[0].maps.mapId;
    newJson[0].maps.mapName;
    这样即可  循环可取出所有
      

  3.   

    var newJson=eval(json);
    var str="<table>"
    for (var i=0; i< newJson.length; i++)
    {
        var maps = newJson[i].maps;
        str += "<tr ><td rowspan='"+maps.length+"'>"+newJson[i].mapTypeId+"</td><td rowspan='"+maps.length+"'>"+newJson[i].mapTypeName+"</td>";
        if (maps.length>0)
        {
            str+="<td>"+maps[0].mapId+"</td><td>"+maps[0].mapName+"</td></tr>";
        }
        else
        {
            str+="</tr>";
        }
        if (maps.length>1)
        {
             for (var j=1;j<maps.length;j++)
            {
                str+="<tr><td>"+maps[j].mapId+"</td><td>"+maps[j].mapName+"</td></tr>";
            }
        }
       
       
    }
    str+="</table>"
      

  4.   

    谢谢大家!我后来采取了一种比较简单的方法也可以实现:[{"mapTypeId":10047,"mapTypeName":"文件档案部",
       "mapSize":2,"mapId0":10002,"mapName0":"时间到了地方"
                ,"mapId1":10021,"mapName1":"test_03-21"  
    }
    ,{"mapTypeId":10054,"mapTypeName":"慈善A部",
        "mapSize":1,"mapId0":10009,"mapName0":"阿松岛换个环境来"}
    ]