我的代码的不同功能有超过 50 个 AJAX 调用。所有这些调用都具有相似的结构,具有不同的 data/url/callback 参数:
var jqXHR = $.post('/dba/port.php', {
mode: "del_wallfunds",
pdata: cdata,
wname: wName
},
function (data) {}, "json")
.done(function (data) {
var msg = data.msg;
if (msg.indexOf("Error") == -1) {
alertify.success(msg);
delSelected(selGroup);
} else {
alertify.error(msg);
}
})
.fail(function () {
alertify.error("Error .....");
});
我正在考虑如何编写一个函数来返回该 var jqXHR 以最小化代码的总大小。传递所有静态变量(如 URL、错误字符串等)不是问题。但问题是“.done”上的所有回调函数都是不同的,我不知道如何将这些回调函数作为变量传递。
一种方法是在 .done 上调用单个“通用”函数并将“开关”变量传递给该函数,但这似乎不是一个优雅的解决方案。
有什么建议可以以某种优雅的方式实现吗?
谢谢