AJAX学习笔记

AJAX

简介

(Asynchronous JavaScript and XML),异步的JavaScript和XML。是一种用于创建快速动态网页的技术。

最大的优点是在不需要重新加载整个页面的情况下,可以与服务器交换数据并更新部分网页内容。

通过AJAX,JavaScript无需等待服务器的响应,而是:在等待服务器响应时执行其他脚本;当响应就绪后对响应进行处理。

服务器响应

如需获得来自服务器的响应,使用XMLHttpRequest对象的reponseText(获得字符串形式的响应数据)或responceXML(获得XML形式的响应数据)。

jQuery AJAX方法

jQuery使用$符号作为jQuery的简写。

常用方法
1
2
3
4
5
6
7
8
9
$.ajax():执行异步AJAX请求
$.get():使用AJAX的HTTP GET请求从服务器加载数据
$.getJSON():使用HTTP GET请求从服务器加载JSON编码的数据
$.getScript():使用AJAX的HTTP GET请求从服务器加载数据并执行JavaScript
$.post():使用AJAX的HTTP POST请求从服务器加载数据

ajaxSend():规定AJAX请求发送之前运行的函数
ajaxSuccess():规定AJAX请求成功完成时运行的函数
ajaxError():规定AJAX请求失败时运行的函数
AJAX load()方法
1
2
3
4
load():从服务器加载数据,并把返回的数据放置到指定的元素中

语法:
$(selector).load(URL,data,callback);

URL参数(必需)规定希望加载的URL;
data参数(可选)规定与请求一同发送的查询字符串键/值对集合;
callback参数(可选)规定当load()方法完成之后所执行的回调函数。

回调函数

是一种以参数形式传递给另一个函数的函数。回调函数可以设置不同的参数:

responseTxt:包含调用成功时的结果内容;
statusTxt:包含调用的状态;
xhr:包含XMLHttpRequest对象。

HTTP请求:POST/GET

HTTP(超文本传输协议)的工作方式是客户端与服务器之间的请求-应答协议。
这是两种从客户端和服务器端进行请求-响应的常用方法。

  • GET:基本用于从服务器获得(取回)数据,GET方法可能返回缓存数据。

    注意:查询字符串(名称/值对)是在GET请求的URL中发送的

  • POST:向指定资源提交要处理的数据。也可用于从服务器获取数据。不过,POST方法不会缓存数据,并且常用于连同请求一起发送数据。

    注意:查询字符串(名称/值对)是在POST请求的HTTP消息主体中发送的。

在以下情况中,使用POST请求:

(1)无法使用缓存文件(更新服务器上的文件或数据库)
(2)向服务器发送大量数据(POST没有数据量限制)
(3)发送包含未知字符的用户输入时,POST比GET更稳定更可靠。

AJAX get()和post()方法

用于通过HTTP GET或POST请求从服务器请求数据。

jQuery $.get() 方法
1
2
//语法:
$.get(URL,callback);

URL(必需)规定希望请求的URL,callback(可选)是请求成功后所执行的函数名。

回调函数的第一个参数存有被请求页面的内容,第二个参数存有请求的状态。

jQuery $.post() 方法
1
2
//语法:
$.post(URL,data,callback);

data参数(可选)规定连同请求发送的数据。