忽略ajax设置

问题描述:

有什么方法可以忽略为特定请求设置了$ .ajaxSetup的选项吗?忽略ajax设置

没有任何内置的功能来做到这一点。 非常第一件事情$.ajax()致电is merge options with $.ajaxSettings,这里没有旁路。

任何的$.ajax() shorthand methods.load()$.post()等)仍呼吁$.ajax()下,所以他们在同一条船上。

这是kludgey但应该工作:

var origAjaxSettings = {}; 

function ajaxSettingsDisable() { 
    jQuery.extend(origAjaxSettings, jQuery.ajaxSettings); 
    jQuery.ajaxSettings = {}; 
} 

function ajaxSettingsEnable() { 
    jQuery.extend(jQuery.ajaxSettings, origAjaxSettings); 
    origAjaxSettings = {}; 
} 

//ajax request of any sort 
ajaxSettingsDisable(); 
$.ajax({ 
    //Ajax request settings 
}); 
ajaxSettingsEnable(); 

这可以被扩展,使其一个jQuery插件。

+0

jQuery ajax设置默认没有所有选项,例如,如果您添加了“成功”处理程序,它仍然会应用:) – 2010-08-31 00:53:15