首页 > 代码库 > jQuery AJAX
jQuery AJAX
jQuery提供多个与AJAX有关的方法。通过jQuery AJAX方法,你能够使用HTTP Get和HTTP Post从远程服务器上请求文本、HTML、XML或JSON-同时还能够把这些外部数据直接载入网页的被选中元素中。
jQuery load方法:
load()方法从服务器加载数据,并把返回的数据放入被选元素中。常用来从Web服务器上获取静态的数据文件。
语法:$(selector).load(URL, data, callback);
必须的URL参数规定你希望加载的URL。
可选的data参数规定与请求一同发送的查询字符串键/值对集合。
可选的callback参数是load()方法完成后所执行的函数名称。callback函数有3个参数,分别代表请求返回的内容、请求状态和XMLHttpRequest对象。
$("#div1").load("test.html", function(responseText, textStatus, XMLHttpRequest){
});
jQuery $.get()方法:
$.get()方法通过HTTP Get请求从服务器上请求数据。
语法:$.get(url, [,data], [,callback], [,type]);
jQuery $.post()方法:
$.post()方法通过HTTP POST请求从服务器上请求数据。
$.get()与 $.post()的区别:
- GET请求会将参数跟在URL后进行传递,而POST请求则是作为HTTP消息的实体内容发送给Web服务器。
- GET方式对传输的数据有大小的限制(通常不能大于2KB),而是用POST方式传递的数据量要比GET方式大得多(理论上不受限制)
- GET方式请求的数据会被浏览器缓存起来,因此其他人就可以从浏览器的历史记录中读取到这些数据,例如账号和密码等。在某种情况下,GET方式会带来严重的安全问题,而POST方式相对来说可以避免这些问题。
- GET方式和POST方式传递的数据在服务端的获取方式也不一样。
$.ajax()方法是jQuery最底层的Ajax实现。语法为 $.ajax(options);
这个方法只有一个参数,但是该参数包含了$.ajax()方法所需要的请求设置以及回调函数等信息。参数以key/value的形式存在,所有参数都是可选的。常用参数参考如下:
参数名称 | 类型 | 说明 |
url | String | 发送请求的地址(默认为当前页地址) |
type | String | 请求方式(POST或GET)默认为GET |
timeout | Number | 设置请求超时时间(毫秒)。此设置将覆盖$.ajaxSetup()方法的全局设置 |
data | Object或String | 发送到服务器的数据 |
dataType | String | 预期服务器返回的数据类型。如果不指定,jQuery将自动根据HTTP包MIME信息返回responseXML或responseText,并作为回调函数参数传递。 xml html script json jsonp text |
beforeSend | Function | 发送请求前可以修改XMLHttpRequest对象的函数 |
complete | Function | 请求完成后调用的函数(请求成功或失败时均调用) |
success | Function | 请求成功后调用的回调函数,有两个参数。 1:有服务器返回,并根据dataType参数进行处理后的数据 2:描述状态的字符串 |
error | Function | 请求失败时调用的函数。有三个参数 |
global | Boolean | 默认为true,表示是否触发全局Ajax事件。设置为false将不会触发全局Ajax事件,AjaxStart或AjaxStop可用于控制各种Ajax事件 |
jQuery AJAX