|
知识路径: > 电子商务系统程序设计基础 > Web 设计基础 > AJAX > AJAX >
|
相关知识点:5个
|
|
|
|
(1)首先,创建XMLHttpRequest对象。
|
|
|
|
|
(2)使用XMLHttpRequest对象的open()方法发送请求给服务器。
|
|
|
open(request-type,url,async)方法包括三个参数,其中request-type包括get和post两种请求方式,分别对应不同的send()用法;async参数一般为true,默认为异步操作。
|
|
|
|
|
|
|
另外,post传输数据量大,主要用于向服务器发送大的数据,可以大到2MB;get传输数据量小,主要向服务器发送小的请求,发送数据最大为2KB。相比之下get发送更快,但是发送包含未知字符的用户输入时,post比get更稳定也更可靠。
|
|
|
(3)调用回调函数。如在上一步open的第3个参数是true,那么当前就是异步请求,这时需要写一个回调函数,XMLHttpRequest对象的onreadystatechange属性,这个属性返回的是一个匿名方法,所以回调函数就写成xmlhttp.onreadystatechange=function{},其内部就是回调函数的内容。回调函数是请求在后台处理完再返回到前台所实现的功能。下面例子的回调函数要实现的功能是接收后台处理后反馈给前台的数据,然后将这个数据显示到指定id的div上。因为从后台返回的数据可能是错误的,所以在回调函数中首先要判断后台返回的信息是否正确,如果正确才可以继续执行。代码如下:
|
|
|
|
(4)发送HTTP请求。在经过以上步骤的设置之后,就可以将HTTP请求发送到Web服务器上去了。发送HTTP请求可以使用XMLHttpRequest对象的send()方法,其代码如下所示:
|
|
|
|
其中data是个可选参数,如果请求的数据不需要参数,即可以使用null来替代。data参数的格式与在URL中传递参数的格式类似。在使用send()方法之后,XMLHttpRequest对象的readyState属性值才会开始改变,也才会激发readystatechange事件,并调用函数,把服务器的数据传到前端,通过局部div进行更新变化。
|
|
|