Ajax使用教程

  • Post author:
  • Post category:其他


AJAX

是什么?

AJAX

是一种在无需重新加载整个网页的情况下,能够更新部分网页的技术。通过在后台与服务器进行少量数据交换,


AJAX


可以使网页实现异步更新。

AJAX

有哪些常用参数?

async


类型:

Boolean


默认值

: true




默认设置下,所有请求均为异步请求。如果需要发送同步请求,请将此选项设置为

false


beforeSend(XHR)


类型:

Function


如果返回

false

可以取消本次


ajax


请求。

cache


类型:

Boolean


默认值

: true




dataType





script





jsonp


时默认为


false


。设置为


false


将不缓存此页面。

complete(XHR, TS)


类型:

Function


请求完成后回调函数

(

请求成功或失败之后均调用


)



contentType


类型:

String


默认值

: “application/x-www-form-urlencoded”

。发送信息至服务器时内容编码类型。默认值适合大多数情况。

context


类型:

Object


这个对象用于设置

Ajax

相关回调函数的上下文。也就是说,让回调函数内


this


指向这个对象(如果不设定这个参数,那么


this


就指向调用本次


AJAX


请求时传递的


options


参数)。比如指定一个


DOM


元素作为


context


参数,这样就设置了


success


回调函数的上下文为这个


DOM


元素。


就像这样:

$.ajax({ url: “test.html”, context: document.body, success: function(){

$(this).addClass(“done”);

}});

data


类型:

String


发送到服务器的数据。将自动转换为请求字符串格式。

GET

请求中将附加在


URL


后。查看


processData


选项说明以禁止此自动转换。必须为


Key/Value


格式。如果为数组,


jQuery


将自动为不同值对应同一个名称。如


{foo:[“bar1”, “bar2”]}


转换为


‘&foo=bar1&foo=bar2’



dataFilter


类型:

Function




Ajax

返回的原始数据的进行预处理的函数。提供


data





type


两个参数:


data





Ajax


返回的原始数据,


type


是调用


jQuery.ajax


时提供的


dataType


参数。函数返回的值将由


jQuery


进一步处理。

dataType


类型:

String


预期服务器返回的数据类型。如果不指定,

jQuery

将自动根据


HTTP





MIME


信息来智能判断,比如


XML MIME


类型就被识别为


XML


。在


1.4


中,


JSON


就会生成一个


JavaScript


对象,而


script


则会执行这个脚本。随后服务器端返回的数据会根据这个值解析后,传递给回调函数。可用值


:

“xml”:

返回


XML


文档,可用


jQuery


处理。

“html”:

返回纯文本


HTML


信息;包含的


script


标签会在插入


dom


时执行。

“script”:

返回纯文本


JavaScript


代码。不会自动缓存结果。除非设置了


“cache”


参数。注意:在远程请求时


(


不在同一个域下


)


,所有


POST


请求都将转为


GET


请求。(因为将使用


DOM





script


标签来加载)

“json”:

返回


JSON


数据 。

“jsonp”: JSONP

格式。使用


JSONP


形式调用函数时,如


“myurl?callback=?” jQuery


将自动替换


?


为正确的函数名,以执行回调函数。

“text”:

返回纯文本字符串

error


类型:

Function


默认值

:

自动判断


(xml





html)


。请求失败时调用此函数。


有以下三个参数:

XMLHttpRequest

对象、错误信息、(可选)捕获的异常对象。


如果发生了错误,错误信息(第二个参数)除了得到

null

之外,还可能是


“timeout”, “error”, “notmodified”





“parsererror”



global


类型:

Boolean


是否触发全局

AJAX

事件。默认值


: true


。设置为


false


将不会触发全局


AJAX


事件,如


ajaxStart





ajaxStop


可用于控制不同的


Ajax


事件。

ifModified


类型:

Boolean


仅在服务器数据改变时获取新数据。默认值

: false

。使用


HTTP





Last-Modified


头信息判断。在


jQuery 1.4


中,它也会检查服务器指定的


‘etag’


来确定数据没有被修改过。

jsonp


类型:

String


在一个

jsonp

请求中重写回调函数的名字。这个值用来替代在


“callback=?”


这种


GET





POST


请求中


URL


参数里的


“callback”


部分,比如


{jsonp:’onJsonPLoad’}


会导致将


“onJsonPLoad=?”


传给服务器。

jsonpCallback


类型:

String




jsonp

请求指定一个回调函数名。这个值将用来取代


jQuery


自动生成的随机函数名。这主要用来让


jQuery


生成度独特的函数名,这样管理请求更容易,也能方便地提供回调函数和错误处理。你也可以在想让浏览器缓存


GET


请求的时候,指定这个回调函数名。

password


类型:

String


用于响应

HTTP

访问认证请求的密码

processData


类型:

Boolean


默认值

: true

。默认情况下,通过


data


选项传递进来的数据,如果是一个对象


(


技术上讲只要不是字符串


)


,都会处理转化成一个查询字符串,以配合默认内容类型


“application/x-www-form-urlencoded”


。如果要发送


DOM


树信息或其它不希望转换的信息,请设置为


false



scriptCharset


类型:

String


只有当请求时

dataType




“jsonp”





“script”


,并且


type





“GET”


才会用于强制修改


charset


。通常只在本地和远程的内容编码不同时使用。

success


类型:

Function


请求成功后的回调函数。


参数:由服务器返回,并根据

dataType

参数进行处理后的数据;描述状态的字符串。

traditional


类型:

Boolean


如果你想要用传统的方式来序列化数据,那么就设置为

true

。请参考工具分类下面的


jQuery.param


方法。

timeout


类型:

Number


设置请求超时时间(毫秒)。此设置将覆盖全局设置。

type


类型:

String


默认值

: “GET”)

。请求方式


(“POST”





“GET”)


, 默认为


“GET”


。注意:其它


HTTP


请求方法,如


PUT





DELETE


也可以使用,但仅部分浏览器支持。

url


类型:

String


默认值

:

当前页地址。发送请求的地址。

username


类型:

String


用于响应

HTTP

访问认证请求的用户名。

xhr


类型:

Function


需要返回一个

XMLHttpRequest

对象。默认在


IE


下是


ActiveXObject


而其他情况下是


XMLHttpRequest


。用于重写或者提供一个增强的


XMLHttpRequest


对象。



版权声明:本文为qq_33865313原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。