首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 网站开发 > JavaScript >

如何使用jQuery解析这段json类型的数据

2013-03-01 
怎么使用jQuery解析这段json类型的数据[{objName:datalist,objUser:[{sUserName:JSON0,sAddres

怎么使用jQuery解析这段json类型的数据
[{"objName":"datalist","objUser":[{"sUserName":"JSON0","sAddress":"中国-北京-海淀0号"},{"sUserName":"JSON1","sAddress":"中国-北京-海淀1号"},{"sUserName":"JSON2","sAddress":"中国-北京-海淀2号"},{"sUserName":"JSON3","sAddress":"中国-北京-海淀3号"},{"sUserName":"JSON4","sAddress":"中国-北京-海淀4号"}]}]


这是我写的。搞不定啊.

$(function() {
var json = [{"objName":"datalist","objUser":[{"sUserName":"JSON0","sAddress":"中国-北京-海淀0号"},{"sUserName":"JSON1","sAddress":"中国-北京-海淀1号"},{"sUserName":"JSON2","sAddress":"中国-北京-海淀2号"},{"sUserName":"JSON3","sAddress":"中国-北京-海淀3号"},{"sUserName":"JSON4","sAddress":"中国-北京-海淀4号"}]}]
    var data = eval('(' + json + ')');
    alert(data.objName);
    $.each(data.objUser,
    function(i, o) {
        alert(o.sAddress);
    });
})



我要弹出提示:datalist,然后是每个sAddress的值


求高人指点

[解决办法]

var json = [{"objName":"datalist","objUser":[{"sUserName":"JSON0","sAddress":"中国-北京-海淀0号"},{"sUserName":"JSON1","sAddress":"中国-北京-海淀1号"},{"sUserName":"JSON2","sAddress":"中国-北京-海淀2号"},{"sUserName":"JSON3","sAddress":"中国-北京-海淀3号"},{"sUserName":"JSON4","sAddress":"中国-北京-海淀4号"}]}];
for(i in json){
     alert(json[i].objName);
     for(s in json[i].objUser){
        alert(json[i].objUser[s].sAddress);
       }
}

[解决办法]
json变量本来就是JSON格式的了,LZ为什么还要用var data = eval('(' + json + ')');把这红色这句去了。


$(function() {
    var json = [
                  {
                      "objName":"datalist",
                      "objUser":[
                                  {"sUserName":"JSON0","sAddress":"中国-北京-海淀0号"},
                                  {"sUserName":"JSON1","sAddress":"中国-北京-海淀1号"},
                                  {"sUserName":"JSON2","sAddress":"中国-北京-海淀2号"},
                                  {"sUserName":"JSON3","sAddress":"中国-北京-海淀3号"},
                                  {"sUserName":"JSON4","sAddress":"中国-北京-海淀4号"}
                                ]


                  }
                ];  
    $.each(json[0].objUser,function(i, o) {
        alert(o.sAddress);
    });
})


[解决办法]

<script src="http://code.jquery.com/jquery-latest.js"></script>
<script type="text/javascript">
$(function() {
var json = [{"objName":"datalist","objUser":[{"sUserName":"JSON0","sAddress":"中国-北京-海淀0号"},{"sUserName":"JSON1","sAddress":"中国-北京-海淀1号"},{"sUserName":"JSON2","sAddress":"中国-北京-海淀2号"},{"sUserName":"JSON3","sAddress":"中国-北京-海淀3号"},{"sUserName":"JSON4","sAddress":"中国-北京-海淀4号"}]}];
var a=json[0].objUser;
var cnt=json[0].objUser.length;
alert(json[0].objName);
for(var i=0;i<cnt;i++){
alert(a[i].sAddress);
}
})
</script>

热点排行