相关疑难解决方法(0)

JavaScript检测AJAX事件

好吧基本上我想在一个页面上有一些javascript,以某种方式附加某种全局事件监听器,如果发出ajax请求可以检测并执行某些操作(无需直接从调用中调用它),无论ajax如何打电话.

我想出了如何用jquery做这个 - 如果ajax请求是 jquery 完成.这是一个示例代码:

$.post(
  // requested script
  'someScript.php', 
  // data to send
  {
    'foo' : 'bar',
    'a' : 'b'
  },
  // receive response
  function(response){
    // do something
  }
); // .post

// global event listener    
$(document).ajaxSend(
  function(event,request,settings){
    alert(settings.url); // output: "someScript.php"
    alert(settings.data); // output: "foo=bar&a=b"
  }
);
Run Code Online (Sandbox Code Playgroud)

使用此代码,无论我在何处/如何调用$ .post(..),全局事件侦听器都将触发.如果我使用$ .get或$ .ajax(任何jquery ajax方法),它也可以工作,无论我如何/何时调用它(作为onclick附加,在页面加载,无论如何).

但是,我希望能够扩展此侦听器以触发,无论使用什么js框架,或者即使没有使用框架.因此,例如,如果我有一个页面上下面的代码(从W3Schools的通用Ajax代码):

function loadXMLDoc()
{
if (window.XMLHttpRequest)
  {// code for IE7+, Firefox, Chrome, Opera, Safari
  xmlhttp=new XMLHttpRequest();
  }
else
  {// code …
Run Code Online (Sandbox Code Playgroud)

javascript ajax

71
推荐指数
2
解决办法
6万
查看次数

标签 统计

ajax ×1

javascript ×1