使用ajax beforeSend修改数据
假设我有一个来自jQuery的Ajax调用,如下所示:
$.ajax({ url: myUrl, data: myData, type:'post' });
我希望能够使用添加到myData
$.ajaxSetup({ beforeSend: function(call){...} });
结果应该是所有ajax调用(post和get)都被修改,所以如果我得到一个额外的参数IsAjax = true
此博客文章介绍了如何使用$.ajaxSetup
添加数据。 它像$.extend
一样积累就这样做:
$.ajaxSetup({ data:{ isAjax:true } });
$.ajaxSetup({ beforeSend: function(jqXHR, settings) { settings.data = $.extend(settings.data, {isAjax: true}); return true; } });
你可以在$ .ajax()中实际使用beforeSend;
$.ajax({ beforeSend: function(xhr){ this.data += '&' + $.param({ param: 'test' }); } });