解决方案 »

  1.   

    因为getJSON是回调执行呀不是不执行,是each了一个空数组
      

  2.   

    $.ajaxSetting.async = false;设成同步
    因为getJSON还没执行完成就执行each遍历了 得到的当然是空数组了
      

  3.   

    有http请求的默认是异步的, 你执行each的时候, 数据还没得到呢
      

  4.   

    应该是异步的问题,只要放在callback里就可以了
    $(function(){
    var fromFlights = new Array();
    $.getJSON("http://eunion.csair.com/E-UNION/data/avprice/getMinPrice.json?inter=N&jsoncallback=?",function(flightdata){
       fromFlights = flightdata.FROMOFLIGHTS;
    $.each(fromFlights,function(a,m){
    alert(123);
    })})
    })
      

  5.   


    根据您说的原因,我用了$.ajax,可以了,谢谢
    var fromFlights = new Array();
    $.ajax({
      dataType: "json",
      url: "http://eunion.csair.com/E-UNION/data/avprice/getMinPrice.json?inter=N&jsoncallback=?",
      async: true,
      success: function(flightdata){
      fromFlights = flightdata.FROMOFLIGHTS;
      }
      })