【问题标题】:AJAX: Cannot pass object through context parameter into ajaxSuccess functionAJAX:无法通过上下文参数将对象传递给 ajaxSuccess 函数
【发布时间】:2013-09-03 19:03:09
【问题描述】:

知道为什么我不能将上下文传递给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 请求上发生的全局事件。

【问题讨论】:

  • 试试this.foo会解决的

标签: javascript jquery ajax


【解决方案1】:

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

好像没有使用上下文参数调用 ajaxSuccess。

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

演示:Fiddle

【讨论】:

  • 谢谢!注意到我也可以传递它并通过 settings.context 检索它。
猜你喜欢
  • 2017-04-14
  • 1970-01-01
  • 2021-09-05
  • 2019-08-29
  • 1970-01-01
  • 2018-07-31
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多