我也是这么认为的,但是在执行完赋值后,jsonData就是为null,让人很费解

解决方案 »

  1.   

    我也是这么认为的,但是在执行完赋值后,jsonData就是为null,让人很费解
      

  2.   

    jquery的getJSON是异步ajax请求。也就是说这个函数执行完成后,并不能保证立即就能得到服务器响应。何为异步:向服务器发出请求后,不管你是否返回响应,我都执行后面的代码,当服务器·返回响应后,再通过回调函数通知客服端请求已响应。
    要解决你的这个问题,你可以直接使用$.ajax(),将async设置为false即可保证函数执行完成后全局变量立即得到赋值
      

  3.   

    $.getJSON之前加$.ajaxSettings.async=false;就OK。
      

  4.   

    $.getJSON之前加$.ajaxSettings.async=false;强制同步就可以。