0

知道为什么我不能将上下文传递给ajaxSuccess函数吗?我也试过通过代理方法来做,但它似乎不起作用。

来自我的 test.js 的片段:

$('a.ajax-nav').click(function(event) {
  event.preventDefault();
  $.ajax({
    url: event.currentTarget.href,
    context: {foo: 'bar'}
  });
});

然后是ajaxSuccess

$(document).ajaxSuccess(function(event, xhr, settings) {
  console.log(foo.bar);
});

我正在使用 ajaxSuccess 有一个应该在所有成功的 ajax 请求上发生的全局事件。

4

1 回答 1

1

由于您将它作为上下文传递,因此您应该能够通过对象访问该settings对象。

看起来 ajaxSuccess 没有使用 context 参数调用。

$(document).ajaxSuccess(function(event, xhr, settings) {
    console.log(settings.context.foo);
});

演示:小提琴

于 2013-09-03T10:57:29.750 回答