在JS文件中有多个ajax调用,所以我想用多个回调函数调用一个AJAX调用。任何人都可以帮我调用多个AJAX调用。这里是测试代码,
$.ajax({
url : url,
dataType : 'json',
success : test1(data)
});
$.ajax({
url : url,
dataType : 'json',
success : test2(data)
});
工作正常,请你帮我解决我们如何在一个中调用两个ajax调用。
答案 0 :(得分:13)
使用ajax返回的promise对象
var a1 = $.ajax({
url : url,
dataType : 'json',
success : test2
})
.done(cb1)
.done(cb2);
a1.done(cb3);
答案 1 :(得分:6)
只需在一个成功函数中调用你的两个函数......
$.ajax({
url : url,
dataType : 'json',
success : function(data){
test1(data);
test2(data);
}
});
答案 2 :(得分:3)
您可以按照以下方式使用:
$.ajax({
url : url,
dataType : 'json',
success : function(data){
if(url=="xyz.php")
test2(data);
else if(url=="abc.php")
test1(data);
}
});
答案 3 :(得分:1)
你可以这样做 -
$.ajax({
url : url,
dataType : 'json',
success : function(data){
test2(data);
test1(data);
}
});
答案 4 :(得分:1)
喜欢这样
$.ajax({
url : url,
dataType : 'json',
success : function( data ) {
test1(data);
test2(data);
}
});
Simples。
如果您想要所有参数,可以更进一步
$.ajax({
url : url,
dataType : 'json',
success : function() {
test1.apply(null, arguments);
test2.apply(null, arguments);
}
});
你可以像这样使用它们
var test2 = function( data, status, jqXHR) {
console.log( data, status, jqXHR );
};
答案 5 :(得分:0)
您可以轻松定义一个回调函数,您可以在其中调用多个函数。
$.ajax({
url: url,
dataType: 'json',
success: myGlobalCallback(data)
});
function myGlobalCallback(data) {
cb1(data);
cb2(data);
}