您的浏览器过于古老 & 陈旧。为了更好的访问体验, 请 升级你的浏览器
Ready 发布于2014年09月09日 05:43

原创 jQuery.ajaxSetup() 函数详解

5745 次浏览 读完需要≈ 6 分钟

内容目录

jQuery.ajaxSetup()函数用于设置AJAX的全局默认设置

该函数用于更改jQuery中AJAX请求的默认设置选项。之后执行的所有AJAX请求,如果对应的选项参数没有设置,将使用更改后的默认设置。

该函数属于全局jQuery对象。

语法

jQuery 1.1 新增静态函数

jQuery.ajaxSetup( settings )

参数

参数 描述
settings Object类型一个对象,其中的每个属性表示需要更改默认设置的选项,属性值表示更改后的默认值。

关于settings参数可以识别的属性,请参考jQuery.ajax()中的settings参数说明。其中的所有选项参数都是可选设置的。

返回值

jQuery.ajaxSetup()函数没有返回值,或者说其返回值为undefined

示例&说明

以下是与jQuery.ajaxSetup()函数相关的jQuery示例代码,以演示jQuery.ajaxSetup()函数的具体用法:

//设置AJAX的全局默认选项
$.ajaxSetup( {
	url: "/index.html" , // 默认URL
	aysnc: false , // 默认同步加载
	type: "POST" , // 默认使用POST方式
	headers: { // 默认添加请求头
		"Author": "CodePlayer" ,
		"Powered-By": "CodePlayer"
	} ,
	error: function(jqXHR, textStatus, errorMsg){ // 出错时默认的处理函数
		// jqXHR 是经过jQuery封装的XMLHttpRequest对象
		// textStatus 可能为: null、"timeout"、"error"、"abort"或"parsererror"
		// errorMsg 可能为: "Not Found"、"Internal Server Error"等

		// 提示形如:发送AJAX请求到"/index.html"时出错[404]:Not Found
		alert( '发送AJAX请求到"' + this.url + '"时出错[' + jqXHR.status + ']:' + errorMsg );		
	}
} );


// 未设置任何参数,但url、async、type、headers、error等参数的默认值均已被$.ajaxSetup()更改(如上)
$.ajax( );


// 设置了url、type、success、error,就使用自己设置的参数值
// 但async、headers等参数的默认值已被$.ajaxSetup()更改
$.ajax( {
	url: "myurl.php?action=list" ,
	type: "GET" ,
	success: function( data, textStatus, jqXHR ){
		alert("返回数据:" + data);
	} ,
	error: function(jqXHR, textStatus, errorMsg){
		alert("自己的error!");        
	}
});

// 上述$.ajaxSetup()的默认设置对$.get()、$.post()、load()、$.getJSON()、$.getScript()等AJAX函数也生效
// 因为这些函数也是在内部调用$.ajax()函数来实现的,只不过它们在内部都设置了一些参数


// $.get()在内部调用$.ajax()时已设置type为"GET",因此仍然使用GET方式。
// 但url、async、headers、error等参数的默认值已被$.ajaxSetup()更改
$.get( );


// $.post()在内部调用$.ajax()时已设置type为"POST",因此仍然使用POST方式。
// url也被设置为"user/action.php?method=addUser"
// 但async、headers、error等参数的默认值已被$.ajaxSetup()更改
$.post( "user/action.php?method=addUser" );
  • CodePlayer技术交流群1
  • CodePlayer技术交流群2

0 条评论

撰写评论

打开导航菜单