锋利的jQuery之jQuery中的ajax
jQuery对Ajax进行了封装,$.ajax()方法是最底层的方法,第2层是load(),get(),post()方法,第3层是$.getScript()和$.getJSON()方法。
1.load()方法
1.1载入HTML文档
load(url [,data] [,callback])
url所请求HTML页面的url
data发送至服务器的key/value
callback请求完成(无论成功还是失败)时的回调函数
1.2筛选载入的文档
用于筛选载入的HTML文档时,url参数的语法结构为"url selector".
1.3传递方式
load()方法的传递方式根据参数data自动指定。如果没有参数指定,则采用GET方式传递;反之采用POST方式传递。
1.4回调函数
回调函数用于必须在请求完成时执行的操作。回调函数有3个参数,分别是请求返回的内容,请求状态和XMlHttpRequest对象。
2$.get()和$.post()方法
$.get(url [, data] [, callback] [, type])
url请求的url地址
data发送至服务器的key/value数据,会作为QueryString附加到请求的url中
callback请求成功时的回调函数(只有Response的状态是success时,才调用),只有两个参数,返回的内容和请求状态。
type服务器端返回内容的格式,包括xml,html,script,json,text和default
$.post()方法
他与$.get()方法的结构和使用方式相同,两者的区别如下:
1)get请求会把参数跟在url后面进行传递,而post请求则是把参数作为http消息的实体内容发送给web服务器。
2)get请求对传输的数据大小有限制(通常不超过2Kb),而post请求则要大得多(理论上是没有限制的)。
3)get请求的数据会被浏览器缓存,所以get方式可能存在安全问题,而post方式相对来说是可以避免这样的问题的。
4)两种方式传递的参数在服务器端的获取方式不一样。在php中,get方式的数据可以用$_GET[]获取,post方式的数据可以用$_POST[]获取,两者都可以用$_REQUEST[]来获取。
3$.getScript()和$.getJSON()方法
$.getScript()
该方法可以用来直接加载.js文件。
$.getJSON()
该方法用于加载JSON文件。
4$.ajax()方法
$.ajax(options)
该方法只有一个参数,但是在这个对象中包含了所需要的请求设置以及回调函数等信息,参数以key/value的形式存在,所有的参数都是可选的。
url请求的URL地址
type 请求方式,默认为GET
timeout请求的超时时间
data 发送到服务器的数据,如果不是字符串格式,会自动转换为字符串格式
dataType预期服务器返回的数据类型
beforeSend发送请求前可以修改XMLHttpRequest对象的函数
complete请求完成时的回调函数
success请求成功时的回调函数
error请求失败时的回调函数
global默认为true,表示是否触发全局Ajax事件
相关推荐
结束数据方法的参数,该如何定义?-- 集合为自定义实体类中的结合属性,有几个实体类,改变下标就行了。<input id="add" type="button" value="新增visitor&quo