一个带有 async:true 的 ajax 函数
One ajax function with async:true
我如何在代码中只使用 1 个 ajax 函数,该函数仅在 ajax 完成后返回数据。
例:
var Jurl = json.php, Jdata='one:AAA';
jsonRet = json(Jurl, Jdata);
if(jsonRet) {
$('body').prepend(data);
} else {
Jurl = anotherJson2.php;
Jdata='one:BBB';
jsonRet2 = json(Jurl,Jdata);
if(jsonRet2) {
...
}
}
json(Jurl, Jdata) {
$.getJSON(Jurl, {Jdata} , function(data) {
if(data ==='finish') {
return false;
} else {
return data;
}
}
但是,我不能使用此代码,我必须使用 jsonRet2 创建另一个(另一个)函数。所以代码不会优化...我想要最少的代码。
您有一个语法错误,仅此而已。
if(data['end']===true) { ... }
编辑
您还需要使用 promise 从异步调用中返回值,请参见以下示例:
$.getJSON(Jurl, {Jdata} , function(data) {
var dfd = $.Deferred();
if(data['end']==='true') {
dfd.reject(false);
} else {
dfd.resolve(data);
}
return dfd.promise();
});
相关文章:
- 挂钩到Rails内置远程:true'ajax:成功'事件
- 通过AJAX从具有LazyLoadingEnabled=true的EF返回的数组不正确
- CORS-如果Jquery-ajax's”;withCredentials:true”;已使用
- Jquery-(ajax async:true)元素大小没有响应
- 使用自定义 ajax 请求渲染 js 部分(而不是远程:true)
- Rails 3 在 onclick 上创建一个
做一个 ajax 与 :remote => true 链接相同 - While ajax, async:true,deferred
- 一个带有 async:true 的 ajax 函数
- 如何排序这个jQuery tha运行ajax然后必须返回true
- 获取 Ajax 函数以返回 true 或 false
- 带有 ajax 远程 true 的 Rails link_to 不更新视图
- 如何从AJAX响应中查找值(true或false)
- 是否可以将true/false值传递给ajax函数
- 如果前一个ajax的结果为true,则调用另一个ajax
- 当async为true时,Ajax调用返回undefined
- 即使禁用了XMLHTTP支持,jQuery.support.ajax也返回true
- php发布后AJAX重定向返回true或无错误
- Remote true on button_to not进行ajax调用
- Ajax总是返回true
- Rails AJAX remote:带动态id的true