需要返回jQuery.ajax的responseText而不是使用'success'函数

时间:2010-12-10 21:15:37

标签: jquery ajax responsetext

我想要一个返回 jQuery.ajax()调用的repsonseText的函数。我见过的所有例子都说使用'success'函数来处理返回的数据。但是,对于我的实现,我需要以下内容:

function getRemoteValue(id) {
  var request = jQuery.ajax({
    url:'somefile.php',
    dataType:'text'
  });
  return request.responseText;
}

当我调用此函数时,Firebug会显示请求,并返回正确的Response。但是,当我尝试以下操作时,我只得到一个空字符串:

var some_value = getRemoteValue(1); // The problem is here. some_value is empty.
jQuery('.someclass').html(some_value);
// Other processing using some_value;

同样,对于我的实现,我不能做jQuery('。someclass')。html(some_value);在ajax()调用中。如何返回responseText?谢谢!

1 个答案:

答案 0 :(得分:1)

罗伯,

以下代码有效但返回null

var some_value = getRemoteValue(1); 

ajax调用是异步调用,它只是实例化进程继续,所以你总会有这个问题

您需要将代码移动到ajax的成功处理程序以执行任何后期操作。