Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/80.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Jquery 我的延迟结果未正确传递_Jquery_Ajax_Deferred - Fatal编程技术网

Jquery 我的延迟结果未正确传递

Jquery 我的延迟结果未正确传递,jquery,ajax,deferred,Jquery,Ajax,Deferred,ajax调用返回的数据似乎是空的。当我取消注释success:function(result)块时,结果将正确输出到控制台,因此我知道数据存在。但是,当我调用request().done时,延迟值显示为空 function request(cat) { return $.ajax ({ url: 'query.php', type: 'POST', data: {Category: cat}, dataType: 'json'//,

ajax调用返回的数据似乎是空的。当我取消注释
success:function(result)
块时,结果将正确输出到控制台,因此我知道数据存在。但是,当我调用
request().done
时,延迟值显示为空

function request(cat)
{    
    return $.ajax
    ({
     url: 'query.php',
     type: 'POST',
     data: {Category: cat},
     dataType: 'json'//, 
     //success: function(result) 
     //{  
     //  if(result) 
     //  {        
     //  console.log(result[0]); Result outputs to the console correctly
     //  }
     //}  
}); // end ajax call   
}

request().done(function(data) { console.log(data[0]); });  //array appears to be empty
应按如下方式更换

if(result) 
{        
  console.log(result[0]);
}

对不起,这不是我的问题。那个时期是一个打字错误,不应该出现在那里。我的问题是延迟值显示为空,而注释的块显示正确。问题确实说明了这一点。
if(result) 
{        
  console.log(result[0]);
}