标签:
ajax请求的时候,会碰到这种情况,例如需要在每个ajax请求都带上相同的验证参数,是否有方法能够自动的将这些参数在ajax请求的时候自动带上?
我们都知道jQuery的ajaxSetup函数可以在ajax发起请求前,修改ajax请求的默认设置选项,之后执行的ajax的请求,如果对应的选项参数没有设置,将使用更改后的默认设置。设置的选项会存放于jQuery.ajaxSettings中。
$.ajaxSetup({ data: { token: "XXXX" //在每次ajax请求带上token参数 } });
在ajax请求的时候,会合并 ajaxSettings 中的默认设置的参数,
但ajaxsetup对get请求不生效,并不会合并参数,对post请求生效。因为get请求,已经将查询字符串已经放在url上了。对于get请求,我们可以通过扩展ajax解决此问题
(function ($) { var _ajax = $.ajax; $.extend({ ajax: function (o) { //todo if(o.data){ //...... } return _ajax.call(this, o); } }); })(jQuery);
参考资料:https://groups.google.com/forum/#!topic/jquery-dev/OBcEfgvTJ9I
标签:
原文地址:http://www.cnblogs.com/ihuizi/p/4534206.html