【问题标题】:In JQuery/Backbone, how can I override every AJAX request to add an additional parameter?在 JQuery/Backbone 中,如何覆盖每个 AJAX 请求以添加附加参数?
【发布时间】:2013-04-22 10:40:58
【问题描述】:
$.post('/js/register', data, function(){

});

$.get('/js/home', data, function(){
    //render the template here
});

我在我的 Backbone 应用程序中使用这些。它从服务器获取数据,然后呈现模板。

我想在全局级别上覆盖这些,以便在我进行这些调用时,“数据”具有当前 window.location(url)作为属性。

对于每个 ajax 调用,我想附加用户当前所在的当前 url。

PS - 我正在使用 Backbone 推送状态 - 这有什么不同吗?

【问题讨论】:

    标签: javascript jquery url backbone.js


    【解决方案1】:

    我认为这个答案应该可以帮助你https://stackoverflow.com/a/6998085/1846192

    在你的情况下:

    $.ajaxPrefilter(function (options, originalOptions, jqXHR) {
      options.data = $.param($.extend(originalOptions.data, { url: window.location.href }));
    });
    

    【讨论】:

    • 我已经编辑了答案,只需将其放在任何调用 $.get()$.post() 之前的任何位置。
    猜你喜欢
    • 2011-04-08
    • 2020-04-21
    • 2014-12-30
    • 2017-08-23
    • 1970-01-01
    • 1970-01-01
    • 2016-09-19
    • 1970-01-01
    • 2016-11-08
    相关资源
    最近更新 更多