我试图拦截所有AJAX调用,以检查AJAX响应是否包含我从PHP脚本作为JSON发送的特定错误代码(代码:ACCESS_DENIED,SYSTEM_ERROR,NOT_FOUND)。
我知道一个人可以做这样的事情:
$('.log').ajaxSuccess(function(e, xhr, settings) { });
但是-仅在“ ajaxSuccess”事件起泡到.log div时才起作用吗?我对么?通过将“ ajaxSuccess”事件绑定到文档可以实现我想要的东西吗?
$(document).ajaxSuccess(function(e, xhr, settings) { });
我可以在jQuery或原始JavaScript中执行此操作。
从http://api.jquery.com/ajaxSuccess/中:
每当Ajax请求成功完成时,jQuery都会触发ajaxSuccess事件。此时,将执行已向.ajaxSuccess()方法注册的所有处理程序。
因此,选择器不会定义您要“捕获”事件的位置(坦白地说,因为ajax事件本质上并不是从DOM元素开始的),而是定义了默认处理范围(即this将poitn到/那些元件(一个或多个))。
this
总结-它应该正是您想要的