拦截Jquery AJAX请求以插入其他变量?

Cli*_*ote 5 javascript ajax jquery

有没有办法拦截通过jquery发出的ajax请求,以便在其中插入其他变量?

我知道.ajaxStart()允许你注册一个回调,它会在ajax请求开始时触发事件,但我正在寻找的是一种方法来取消ajax请求,如果它满足某些条件(例如url),插入更多将变量放入其内容,然后提交.

这是针对第三方软件的插件,其自身代码无法直接更改.

编辑:似乎.ajaxSetup()允许您设置一些与ajaxRequests相关的全局变量.如果我注册了beforeSend函数,该函数是否能够取消请求以满足某些条件的不同?

Cli*_*ote 7

弄清楚,这是我使用的代码:

jQuery(document).ready(function()
{    
    var func = function(e, data) 
    {       
        //data.data is a string with &seperated values, e.g a=b&c=d&.. . 
        //Append additional variables to it and they'll be submitted with the request:      
        data.data += "&id=3&d=f&z=y";
        return true;
    };
    jQuery.ajaxSetup( {beforeSend: func} );
    jQuery.post('example.php', {a : 'b'}, 'json');    
} );
Run Code Online (Sandbox Code Playgroud)

要取消请求,返回false func似乎工作.