参数: optio ns
返回值: xml HttpReq uest
使用HTTP请求一个页面。
这是jque ry的低级ajax实现。要查看高级抽象,见$.set、$.post等,这些方法更易于理解和使用。但是功能上有限制(例如,没有错误处理函数)。
警告:如果数据类型指定为"scrip t",那么POST自动转化为GET方法。(因为script会作为一个嵌入页面的script标签进行载入)
jquery ajax例子$.ajax()函数返回它创建的XMLH ttpRequest对象。在大部分情况下,你不需要直接操作此对象。通常,这个XMLH ttpReq uest对象主要用于需要手动中断XMLH ttpRequest请求的时候。
注意:如果你指明了下面列出的数据类型,请确保服务端发送了正确的MIME响应类型(如. xml 的类型是"te xt/xml")。错误的MIME类型能够导致脚本出现意想不到的问题。请查看AJAX的范例来了解数据类型的更多信息。
$.ajax()函数需要一个参数,一个包含有键/值对的对象,用于初始化并操作请求对象。
在jQue ry 1.2版本中,如果你指明了一个JSONP回调函数,你就可以从其它的域中载入JSON类型的数据,写法类似于"myurl?callback=?" 。jQuery会自动调用正确的方法名称来代替查询字符串,执行你指定的回调函数。或者,你也可以指定jso np的数据类型的回调函数,此函数会自动添加到Ajax请求中。
参数选项:
async(true) 数据类型: Boolean
默认情况下,所有的请求都是异步发送的(默认为true)。如果需要发送同步请求, 设置选项为false。注意,同步请求可能会暂时的锁定浏览器, 当请求激活时不能进行任何操作。
beforeSe nd 数据类型: Functio n
一个预处理函数用于在发送前修改XMLHttpReq uest对象,设置自定义头部等。
XMLH ttpRequest作为惟一的参数被传递。这是一个Aja x 事件。functio n (XMLHttpReq uest) {
this; // the op tions fo r this aja x request
}cache(true) 数据类型: Boolean
jQuery 1.2中新添加的参数, 如果设为false,则会强制浏览器不缓存请求的页面。complete数据类型: Function
当请求完成时执行的函数(在成功或失败之后执行)。这个函数有2个参数: XMLH ttpRequest 对象和一个描述HTTP相应的状态字符串。这是一个Aja x 事件。function (XMLHttpReq uest, te xtStatus) {
this; // the op tions fo r this aja x request
}conte ntType("applicatio n/x-www-fo rm-urlencoded") 数据类型: String
发送到服务器的数据的内容类型。默认是"application/x-www-form-urle ncoded", 适合大多数情况。
data 数据类型: Object,String
要发送给服务器的数据。如果不是字符串,那么它会被转化为一个查询字符串。在GET请求中它被添加到url的末尾。要防止这种自动转化,请查看processData选项。数据对象必须是一组键/值对。如果键对应的值是数组,jQuery会将其值赋给同一个键属性。例如{foo:["bar1", "bar2"]} 变为'&foo=bar1&foo=bar2'。
dataType( Intelligent Guess (xml o r html)) 数据类型: String
期待由服务器返回值类型。如果没有明确指定,jQuery会根据实际返回的MIME类型自动
的将responseXML或responseText传递给success指定的回调函数。有效的类型(返回的类型的结果值会作为第一个参数传递给success指定的回调函数)有:"xml": 返回一个可以由jQue ry处理的XML文档。
"html": 返回文本格式的HTML代码。包括求值后的脚本标记。
"scrip t": 将响应作为javascript语句求值,并返回纯文本。不缓存此脚本,除非设置了cache 选项。设置为"scrip t"类型会将post方法转换为get方法。
"json": 将响应作为JSON求值,并返回一个Javascript对象。
"jsonp": 使用JSONP载入一个JSON代码块. 会在URL的末尾添加"?callback=?"来指明回调函数。(jQuery 1.2以上的版本支持)
"te xt": 文本格式的字符串
erro r 数据类型: Functio n
请求失败时执行的函数。函数具有3个参数: XMLH ttpRequest对象,一个描述产生的错误类型和一个可选的异常对象, 如果有的化。这是一个Aja x 事件。function (XMLH ttpRequest, te xtStatus, errorT hro wn) {
// typically o nly one o f te xtSta tus o r e rrorThro wn
// will have info
this; // the op tions fo r this aja x request
}global(true) 数据类型: Boolean
是否为当前的请求触发全局AJAX事件处理函数,默认值为true。设置为false可以防止触发像ajaxStart或aja xStop这样的全局事件处理函数。这可以用于控制多个不同的Ajax事件。
ifModified(false) 数据类型: Boolean
只有响应自上次请求后被修改过才承认是成功的请求。是通过检查头部的Last-Modified值实现的。默认值为false,即忽略对头部的检查
jsonp数据类型: String
在jsonp请求中重新设置回调的函数。这个值用于代替'callback=?'中的查询字符串。
'callback=?'位于get请求中url的末尾或是post请求传递的数据中。因此设置
{jsonp:'onJso nPLoad'} 会将'onJso nPLoad=?' 传送给服务器。
processData(true) 数据类型: Boolean
在默认的情况下,如果data选项传进的数据是一个对象而不是字符串,将会自动地被处理和转换成一个查询字符串,以适应默认的conte nt-type--
"application/x-www-form-urle ncoded"。如果想发送do m Documents,就要把这个选项设置为false。
success 数据类型: Functio n
当请求成功时调用的函数。这个函数会得到二个参数:从服务器返回的数据(根据“dataType”进行了格式化)和一个描述HTTP相应的状态字符串。这是一个Aja x 事件。functio n (data, te xtStatus) {
// data co uld be xmlDoc, jsonObj, html, te xt,
this; // the op tions fo r this aja x request
}timeo ut 数据类型: N umber
如果通过$.ajaxSe tup设置了一个全局timeout,那么此函数使用一个局部timeo ut覆盖了全局timeo ut(单位为毫秒)。例如,你可以设置比较长的延迟给一个特殊的请求,同时其他所有请求使用1秒的延迟。有关全局延迟,见$.ajaxTimeout()。
type("GET") 数据类型: String
请求的类型("POST" 或"GET"), 默认是"GET"。注意:其他的HTTP请求方法,如PUT 和DELETE,在这里也可以使用,当时它们并不被所有的浏览器支持。
url(T he curre nt page) 数据类型: String
请求发送的目标URL地址
username数据类型: String
username可用于在响应一个HTTP连接时的认证请求。实例
载入并执行一个JavaScript文件。
$.ajax({
type: "GET",
url: "test.js",
dataType: "scrip t"
});保存数据到服务器,完成后通知用户。
$.ajax({
type: "POST",
url: "so me.p hp",
data: "name=Jo hn&location=Bosto n",
success: function(msg){
alert( "Data Saved: " + msg );
}
});取得一个HTML页面的最新版本。
$.ajax({
url: "test.html",
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论