小弟做了个struts2.1.6和JSON插件结合的例子.
后台的Action有一个Map的属性.采用jquery1.2.6中的Ajax Post请求.
结合后台返回了类似以下的JSON格式.{
"photoMap":
{"57":
{"menuid":null,"pattribute":1,"pbigname":"big1248081757843.JPG","pid":57,"pinfo":"不能复制吗?不能复制吗?不能复制吗?","pname":"不能复制吗?","psmaname":"small1248081757843.JPG","ptrname":"DSCF1038.JPG","puptime":"2009-07-20T17:22:38","purlpath":"\/image_per\/200907\/person"},
"56":
{"menuid":null,"pattribute":1,"pbigname":"big1248081680531.JPG","pid":56,"pinfo":"不能复制吗?不能复制吗?","pname":"不能复制吗?","psmaname":"small1248081680531.JPG","ptrname":"DSCF1008.JPG","puptime":"2009-07-20T17:21:21","purlpath":"\/image_per\/200907\/person"},
"62":
{"menuid":null,"pattribute":1,"pbigname":"big1248082855218.JPG","pid":62,"pinfo":"pattributepattribute","pname":"sfsadf","psmaname":"small1248082855218.JPG","ptrname":"DSCF1011.JPG","puptime":"2009-07-20T17:40:55","purlpath":"\/image_per\/200907\/person"}
}
}类似Map的一个JOSN格式
请高手帮我循环一下,拿到里面的"Key"和"Value".

解决方案 »

  1.   

    photoMap.57.menuid那个57不太好,最好前面加上一个字母
      

  2.   

    你得自己去扩展把,javascript本身没有map的实现。
    你可以写成数组形式,然后遍历
      

  3.   

    问题已解决eval("json="+data); 
    for(var i in json) 

    alert(i); 
    var obj = json; for(var attr in obj ) 

    alert("key:" + attr ); 
    alert("value:" + obj[attr] ); 
    } } 
      

  4.   


    var mapData = map["photoMap"]; 
    for(var i in mapData) 

    alert(i); 
    var obj = mapData; for(var attr in obj ) 

    alert("key:" + attr ); 
    alert("value:" + obj[attr] ); }