jQuery JSON响应没有显示

时间:2014-11-11 23:02:38

标签: jquery json

我有我认为有效的json测试,但我无法使其正常运行。

这是一个小提琴:http://jsfiddle.net/pwwj4zf5/

为什么onReady不会在Ajax调用中显示响应的任何想法?

var a; 
function fetch_data(){
       $.ajax({
              url: "http://echo.jsontest.com/key/value/one/two",
              cache: false,
              dataType: "json",
              type: "GET",
              data: {
                     //datapoint: '(' + response1.d.PointOfContactId + ')'
              },
              success:function(data){

                  return data;

              }
       });
}

$(document).ready(function(){

       a = fetch_data(); 
       console.log(typeof(a));
       console.log(a);
});

2 个答案:

答案 0 :(得分:2)

您可以尝试这样的事情:

function fetch_data(fn){
   $.ajax({
          url: "http://echo.jsontest.com/key/value/one/two",
          cache: false,
          dataType: "json",
          type: "GET",
          data: {
                 //datapoint: '(' + response1.d.PointOfContactId + ')'
          },
          success:function(data){
              fn(data);
          }
   });
}

$(document).ready(function(){
    fetch_data(function(data){
        console.log(data);
    }); 
});

Updated Fiddle.

答案 1 :(得分:0)

默认情况下$.ajax()执行异步请求。 (这是有充分理由的)看看API documentation以详细了解hwo以使用回调来处理ajax响应。