我想覆盖Jquery中的$ .ajax函数
我想使用现有功能,并需要添加一些其他功能
例子:
将原始ajax函数放入OriginalAjax变量中
var OriginalAjax = $.ajax
$.ajax = function(xhr){
if(xhr.status ==401)
{
// Diplay Error in dialog box;
}
return(OriginalAjax(xhr));
});
是否可以覆盖$ .ajax函数?如果是,请告诉我们如何实现?
最佳答案
是的,你可以这么做...
var oldAjax = $.ajax;
$.ajax = function() {
// Do your magic.
return oldAjax.apply($, arguments);
};
...或者...
const oldAjax = $.ajax;
$.ajax = (...args) => {
// Do your magic.
return oldAjax(...args);
};
但是,根据您的示例判断,您应该仅使用全局事件处理程序,例如
ajaxComplete()
,您可以在其中检查响应状态。