json数据如下,pid通过传值进来,比如我传入3,现在要读出浦东机场,虹桥机场和各自的id,
这样用json怎么写呢?
var jcList = [
{"pid":"3","airport":[
{"id":"10","name":"浦东国际机场"},
{"id":"11","name":"虹桥机场"}
]},
{"pid":"1","airport":[
{"id":"12","name":"南苑机场"},
{"id":"13","name":"首都国际机场"}
]},
{"pid":"121","airport":[
{"id":"22","name":"禄口国际机场"}
]}
]

解决方案 »

  1.   

    var objs = eval("("+jcList+")");
    for(var x in obj){
       var obj = obj[x];
       if(obj.pid == 3){
          alert(obj.airport[0].name+":"+obj.airport[1].name);
       }
    }
      

  2.   

    不好意思
    var objs = eval("("+jcList+")");
    for(var x in objs){//这里少了s
      var obj = objs[x];//这里也少了s
      if(obj.pid == 3){
      alert(obj.airport[0].name+":"+obj.airport[1].name);
      }
    }
      

  3.   

    被你给玩了,也是我理解有错,json是字符串,你的jclist明显就是个数组嘛    <script type="text/javascript">
        var jcList = [
                        {"pid":"3","airport":[
                            {"id":"10","name":"浦东国际机场"},    
                            {"id":"11","name":"虹桥机场"}
                        ]},
                        {"pid":"1","airport":[
                            {"id":"12","name":"南苑机场"},    
                            {"id":"13","name":"首都国际机场"}
                        ]},
                        {"pid":"121","airport":[
                            {"id":"22","name":"禄口国际机场"}
                        ]}
                    ];
        var objs = jcList;alert(objs)
        for(var x=0; x<objs.length; x++){
            var obj = objs[x];
            if(obj.pid == 3){
                alert(obj.airport[0].name);
            }
        }
        </script>
      

  4.   

    用普通的JavaScript实现了。        for (var i = 0; i < jcList.length; i++) {
                if (jcList[i].pid == '3') {
                    for (var j = 0; j < jcList[i].airport.length; j++) {
                        var newOption = document.createElement("option");
                        newOption.text = jcList[i].airport[j].name;
                        newOption.value = jcList[i].airport[j].id;
                        document.getElementById('Select1').options.add(newOption);
                    }
                    break;
                }
            }
      

  5.   


    var jcList = [{"pid":"3","airport":[
        {"id":"10","name":"浦东国际机场"},    
        {"id":"11","name":"虹桥机场"}
    ]},{"pid":"1","airport":[
        {"id":"12","name":"南苑机场"},    
        {"id":"13","name":"首都国际机场"}
    ]},{"pid":"121","airport":[
        {"id":"22","name":"禄口国际机场"}
    ]}
    ];
    var getAirportId=function(pid){
    var rObj={},rSb=[];
    $.each(jcList,function(i,o){
    if(o.pid.toString()==pid.toString()){
    rObj=o;return false;
    }
    });
    $.each(rObj.airport,function(i,o){
    rSb.push(o.id);
    });
    return rSb;
    };
    alert(getAirportId('3').join('\n'));