jQuery提供多个与AJAX有关的方法,通过这些方法可以使用HTTP Get和HTTP Post从远程服务器上请求文本、HTML、XML、或JSON, 同时能够把这些外部数据直接载入网页的被选元素中。
jQuery load()方法
jQuery load()方法是简单但强大的AJAX方法,从服务器加载数据,并把返回的数据放入被选元素中。语法如下
$(selector).load(URL,data,callback);
URL参数为必需项,规定了希望加载的URL。
data参数为可选项,规定了与请求一同发送的查询字符串键/值对集合。
callback参数为可选项,是load()方法完成后所执行的回调函数慕课设置如下不同的参数。
responseTxt-包含调用成功时的结果
statusTxt-包含调用的状态 ("success"、"notmodified"、"error"、"timeout"、"parsererror")
xhr-包含XMLHttpRequest对象
ajax()方法
ajax()方法通过HTTP请求加载远程数据。 该方法是 jQuery 底层 AJAX 实现。 $.ajax() 返回其创建的 XMLHttpRequest 对象。 最简单的情况下,$.ajax() 可以不带任何参数直接使用。
语法如下:
jQuery.ajax([settings])
参数 | 描述 |
settings | 可选。用于配置 Ajax 请求的键值对集合。 可以通过 $.ajaxSetup() 设置任何选项的默认值。 |
下面的表格中列出了可能的键值对:
名称 | 值/描述 |
async | 布尔值,表示请求是否异步处理。默认是 true。 |
beforeSend(xhr) | 发送请求前运行的函数。 |
cache | 布尔值,表示浏览器是否缓存被请求页面。默认是 true。 |
complete(xhr,status) | 请求完成时运行的函数(在请求成功或失败之后均调用,即在 success 和 error 函数之后)。 |
contentType | 发送数据到服务器时所使用的内容类型。默认是:"application/x-www-form-urlencoded"。 |
context | 为所有 AJAX 相关的回调函数规定 "this" 值。 |
data | 规定要发送到服务器的数据。 |
dataFilter(data,type) | 用于处理 XMLHttpRequest 原始响应数据的函数。 |
dataType | 预期的服务器响应的数据类型。 |
error(xhr,status,error) | 如果请求失败要运行的函数。 |
global | 布尔值,规定是否为请求触发全局 AJAX 事件处理程序。默认是 true。 |
ifModified | 布尔值,规定是否仅在最后一次请求以来响应发生改变时才请求成功。默认是 false。 |
jsonp | 在一个 jsonp 中重写回调函数的字符串。 |
jsonpCallback | 在一个 jsonp 中规定回调函数的名称。 |
password | 规定在 HTTP 访问认证请求中使用的密码。 |
processData | 布尔值,规定通过请求发送的数据是否转换为查询字符串。默认是 true。 |
scriptCharset | 规定请求的字符集。 |
success(result,status,xhr) | 当请求成功时运行的函数。 |
timeout | 设置本地的请求超时时间(以毫秒计)。 |
traditional | 布尔值,规定是否使用参数序列化的传统样式。 |
type | 规定请求的类型(GET 或 POST)。 |
url | 规定发送请求的 URL。默认是当前页面。 |
username | 规定在 HTTP 访问认证请求中使用的用户名。 |
xhr | 用于创建 XMLHttpRequest 对象的函数。 |