我使用原型进行AJAX开发,并且使用如下代码:
somefunction: function(){
var result = "";
myAjax = new Ajax.Request(postUrl, {
method: 'post',
postBody: postData,
contentType: 'application/x-www-form-urlencoded',
onComplete: function(transport){
if (200 == transport.status) {
result = transport.responseText;
}
}
});
return result;
}
而且我发现“结果”是一个空字符串。所以,我尝试了这个:
somefunction: function(){
var result = "";
myAjax = new Ajax.Request(postUrl, {
method: 'post',
postBody: postData,
contentType: 'application/x-www-form-urlencoded',
onComplete: function(transport){
if (200 == transport.status) {
result = transport.responseText;
return result;
}
}
});
}
但这也没有用。如何获取responseText供其他方法使用?
请记住,在someFunction完成工作后很久才调用onComplete。您需要做的是将回调函数作为参数传递给somefunction。当进程完成工作时(即onComplete),将调用此函数:
somefunction: function(callback){
var result = "";
myAjax = new Ajax.Request(postUrl, {
method: 'post',
postBody: postData,
contentType: 'application/x-www-form-urlencoded',
onComplete: function(transport){
if (200 == transport.status) {
result = transport.responseText;
callback(result);
}
}
});
}
somefunction(function(result){
alert(result);
});
问题内容: 这个问题已经在这里有了答案 : 如何从异步调用返回响应? (39个答案) 6年前关闭。 我使用原型进行AJAX开发,并使用如下代码: 而且我发现“结果”是一个空字符串。所以,我尝试了这个: 但这也没有用。如何获取responseText供其他方法使用? 问题答案: 请记住,在someFunction完成工作后很久才调用onComplete。您需要做的是将回调函数作为参数传递给somef
问题内容: 我正在发送一个jQuery get请求,如下所示: 我希望收到的响应将包装在脚本标签中。 我了解浏览器不会执行响应,除非返回的返回结果没有脚本标签。通常,我会从响应中删除标签,但是在这种情况下,我无权访问在远程计算机上运行的代码,因此无法从源代码剥离标签。 有没有办法我可以从响应客户端剥离脚本标签并执行javascript? 问题答案: 您应该能够执行以下操作:
问题内容: 我有一个发送Ajax命令的系统,该命令返回一个带有功能的脚本块。将此数据正确插入DIV后,我希望能够调用此函数来执行所需的操作。 这可能吗? 问题答案: 我想以这种形式正确解释您的问题:“好的,我已经用完所有的Ajax东西了;我只想知道从那时起任何时候都可以调用插入到DIV中的JavaScript函数吗? ,也就是说,我不想在上下文中将其称为“回调返回”。 好的,如果您的意思是这样,那
问题内容: 一旦Ajax通过PHP返回了HTML代码,我就试图加载一个javascript函数。这需要我在ajax响应中回显javascript。 换句话说,我试图在PHP Ajax响应中添加此代码(放置在脚本标签之间)。.希望它执行 从到目前为止的内容来看,浏览器已经完成了Javascript的读取,因此不会执行。有没有办法做到这一点.... ? 问题答案: 您必须像这样评估该代码 要么 如果您
问题内容: 我有一个发出Ajax请求的函数。我如何从中返回响应? 我尝试从回调中返回值,以及将响应分配给函数内部的局部变量并返回该局部变量,但这些方法均未真正返回响应。 问题答案: 问题 在一中的Ajax代表异步。这意味着发送请求(或更确切地说接收响应)已从正常执行流程中删除。在你的示例中,立即返回并且在调用;作为回调传递的函数之前执行下一条语句。 这是一个类比,希望可以使同步流和异步流之间的区别
我使用Guzzle发出一个异步请求,返回JSON。呼叫工作正常,响应正常,但是: 如果我回应- 我需要使用 JSON 来验证来自服务的响应。我该怎么做?我已经浏览了文档,但我显然错过了一些东西。 本质上类似于将json getbody输出分配给$json: 感谢任何帮助问候