jQuery 提供多个与 AJAX 有关的方法。通过 jQuery AJAX 方法,您能够使用 HTTP Get 和 HTTP Post 从远程服务器上请求文本、HTML、XML 或 JSON 同时能够把接收的数据更新到 DOM 对象。
1. $.ajax()
$.ajax()
是 jQuery 中 AJAX 请求的核心方法,所有的其他方法都是在内部使用此方法- 语法:
$.ajax( { name:value, name:value, ... } )
- 说明:参数是 json 的数据,包含请求方式,数据,回调方法等
- async :布尔值,表示请求是否异步处理。默认是 true
- contentType :发送数据到服务器时所使用的内容类型。默认是:“application/x-www-form-urlencoded”
- data:规定要发送到服务器的数据,可以是:string, 数组,多数是 json
- dataType:期望从服务器响应的数据类型。jQuery 从 xml, json, text, html 这些中测试最可能
的类型
xml - 一个 XML 文档
html - HTML 作为纯文本
text - 纯文本字符串
json - 以 JSON运行响应,并以对象返回
- error(xhr,status,error):如果请求失败要运行的函数, 其中 xhr, status, error 是自定义的形参名
- success(result,status,xhr):当请求成功时运行的函数,其中 result, status, xhr 是自定义的形参名
- type:规定请求的类型(GET 或 POST 等),默认是 GET, get,post 不用区分大小写-
- url:规定发送请求的 URL。
注:error() , success()中的 xhr 是 XMLHttpRequest 对象。
例如
$.ajax({async : true , contentType:"application/json"}, data:{name:"lisi", age:"20"});
2. $.get()
$.get()
方法使用 HTTP GET 请求从服务器加载数据。- 语法:
$.get(url, data, function(data, status, xhr), dataType)
- function(data,status,xhr)可选。当请求成功时运行的函数。data,status,xhr 是自定义形参名。
- 参数说明:
data - 包含来自请求的结果数据
status - 包含请求的状态(“success”、“notmodified”、“error”、“timeout”、“parsererror”)
xhr - 包含 XMLHttpRequest 对象 - dataType 可选。规定预期的服务器响应的数据类型。默认地,jQuery 会智能判断。可能的
类型:
xml - 一个 XML 文档
html - HTML 作为纯文本
text - 纯文本字符串
json - 以 JSON 运行响应,并以对象返回
3. $.post()
$.post()
方法使用 HTTP POST 请求从服务器加载数据。- 语法:
$.post(URL,data,function(data,status,xhr),dataType)
- 参数同$get()
实例:
$(function() {
$.ajax({
url:"MyServlet",
type: 'GET',
dataType: 'json',
success:function(result) { //也可以直接写成success(result,status,xhr)
$.each(result, function(i, n)) {
//操作语句
}
}
error:function(xhr, status, error) {// 可以直接写成 error(xhr,status,error)
alert("请求错误:" + error);
}
}
}