1. $.ajax()方法:是jQuery最底层的Ajax实现。它的结构为:$.ajax(options)。该方法只有一个参数,但在这个对象里面包含了$.ajax()方法所需要的请求设置以及回调函数等信息,参数以key/value的形式存在,所有的参数都是可选的。
参数名称 | 类型 | 说明 |
url | String | (默认为当前也地址)发送请求的地址 |
type | String | 请求方式(POST或GET)默认为GET。注意其他HTTP请求方法,例如PUT和DELETE也可以使用,但仅部分浏览器支持 |
timeout | Number | 设置请求超时时间(毫秒)。此设置将覆盖$.ajaxSetup()方法的全局设置 |
data | Object或String | 发送到赴沪期的数据。如果已经不是字符串,将自动转换为字符串格式。GET请求中将附加在URL后。 |
dataType | String |
预期服务器返回的数据类型。如果不指定,jQuery将自动根据HTTP包MIME信息会犯responseXML或responseText,并作为回调函数参数传递。 可用类型如下:xml,html,script,json,jsonp,text。 |
beforeSend | Function |
发送请求前可以修改XMLHttpRequest对象的函数,在beforeSend中返回false可以取消本次Ajax请求。 function(XMLHttpRequest){ this;//调用本次Ajax请求时传递的options参数 } |
complete | Function |
请求完成后调用的回调函数(请求成功或失败时均调用) function(XMLHttpRequest, textStatus){ this;//调用本次Ajax请求时传递的options参数 } |
success | Function |
请求成功后调用的回调函数,有两个参数。(1)由服务器返回,并根据dataType参数进行处理后的数据。(2)描述状态的字符串。 function(data, textStatus){ //data可能时xmlDoc、jsonObj、html、text等等 this;//调用本次Ajax请求时传递的options参数 } |
error | Function |
请求失败时被调用的回调函数,有3个参数。 function(XMLHttpRequest, textStatus,errorThrown){ //通常情况下textStatus和errorThrown只有其中一个包含信息 this;//调用本次Ajax请求时传递的options参数 } |
global | Boolean | 默认为true。表示是否触发全局Ajax事件。设置为false将不会触发全局Ajax事件,AjaxStart或AjaxStop可用于控制各种Ajax事件。 |
jQuery 发送的所有 Ajax 请求,内部都会通过调用 $.ajax()
函数来实现。通常没有必要直接调用这个函数,可以使用几个已经封装的简便方法,如$.get()
和.load()
。如果你需要用到那些不常见的选项,那么, $.ajax()
使用起来更灵活。
2. $.ajaxSetup()方法:为以后要用到的Ajax请求设置默认的值。用于设置$.ajaxSetup()
的详细参数和$.ajax
() 一样。
注意: 此处指定的设置会影响所有 $.ajax
或基于AJAX的衍生方法,如$.get()
的调用。这可能会导致不良的行为因为其他调用(例如,插件)可能希望正常的默认设置。出于这个原因,我们强烈建议您不要使用此API。相反我们建议,在调用时明确设置选项或定义一个简单的插件。