我正在jQuery
开发原型,以便使用ajax
调用更简单。
代码
ajax: {
call : function(url,dataToSend,doOnSuccess,doOnFailure) {
$.ajax({
type: "POST",
url: url,
data: dataToSend
,
//cache: false,
success: function (result) {
doOnSuccess();
},
error: function(xhr, textStatus, errorText) {
doOnFailure();
}
});
}
}
原型
ajax.call("MyUrl",{data:"MyData To Send"},alert(),alert());
例如,我想在警报中显示成功的结果。 那么如何将ajax回调参数传递给我作为参数传递的My委托(例如doOnSuccess()和doOnFailure())?
最好的问候!!
答案 0 :(得分:0)
如果返回回调Ajax在jquery中读取when or deferred
:
或者 呼叫功能,例如:
ajax.call("MyUrl",{data:"MyData To Send"},alert,alert);
答案 1 :(得分:0)
Ajax与否,这是js中的回调函数问题。 您只需将函数作为参数传递。让我们定义你的自定义doOnSuccess和doOnFailure函数:
function doOnSuccess(data, textStatus, xhr){
/* Do something with data, textStatus, xhr */
alert(data);
}
function doOnFailure(xhr, ajaxOptions, thrownError){
/* Do something with parameters) */
alert('error');
}
然后你可以定义你的ajax函数:
ajax: {
call : function(url,dataToSend,doOnSuccess,doOnFailure) {
$.ajax({
type: "POST",
url: url,
data: dataToSend
,
//cache: false,
success: function (data, textStatus, xhr) {
/* Do something with data before doOnSuccess */
doOnSuccess(data, textStatus, xhr);
},
error: doOnFailure
});
}
}
现在我们可以调用ajax函数:
ajax.call("MyUrl",{data:"MyData To Send"},doOnSuccess,doOnFailure);