21、使用jQuery封装后的Ajax
来源:互联网 发布:mac系统装flash 耗电 编辑:程序博客网 时间:2024/05/16 06:49
概括:Ajax是 Asynchronous JavaScript and XML 的缩写,中文翻译为“异步JavaScript和XML" ,是利用
JavaScript语法和XML数据实现客户端与服务器端进行异步通信的一种方法。
jQuery封装了Ajax 的交互过程,用户不需要考虑XMLHttpRequest对象的兼容性问题,以及使用XMLHttpReques建立连接
、发送请求、发送方式、接收方式等。只需要用几个简单的jQuery定义的方法就能实现异步通信。
一、使用GET请求
jQuery定义了get()方法,专门负责通过运程HTTP GET 请求方式载入信息。该方法是一个简单的
GET请求功能,以取代复杂的$.ajax()方法
get()方法具有四个参数:
1、第一个参数表示要请求的页面的URL地址
2、第二个参数表示一个对象结构的名/值对列表 如:{a:"A",b:"B"}
3、第三个参数表示异步交互成功之后调用的回调函数。回调函数的参数值为服务器端响应的数据信息。
4、第四个参数表示服务器端响应信息返回的内容样式,如XML、HTML、Script、Json和Text或者_default
注:只有第一个参数是必需的。
get()方法能够在请求成功时调用回调函数,如果需要在出错时执行函数,则必须使用$.ajax()方法。
二、使用POST请求
jQuery定义了post()方法,专门负责通过远程HTTP POST请求方式载入信息。该方法是一个简单的的
POST请求功能,以取代复杂的$.ajax()方法。
post()方法包含4个参数:
1、第一个参数表示要请求的页面的URL地址
2、第二个参数表示一个对象结构的名/值对列表 如:{a:"A",b:"B"}
3、第三个参数表示异步交互成功之后调用的回调函数。回调函数的参数值为服务器端响应的数据信息。
4、第四个参数表示服务器端响应信息返回的内容样式,如XML、HTML、Script、Json和Text或者_default
注:用法与get()方法完全相同,不过只有请求方式不同而已。
不管是get()方法,还是post()方法,它们都是一种简单的请求方式,对于特殊的数据请求和响应处理
,应该选择$.ajax()方法,$.ajax()方法的参数比较多且复杂,能够处理各类特殊的异步交互行为
三、使用ajax()请求
ajax()方法是jQuery实现Ajax的底层方法,也就是说这是get()、post()等方法基础。
ajax()方法只有一个参数,即一个列表结构的对象,包含各配置及回调函数信息。
如:
$.ajax(
{
type:"GET",//请求方式
url:"test.js",//请求文件的URL
dataType:"script"//响应的数据类型
}
)
ajax()方法的参数选项列表
参数 数据类型 说明
async boolean 设置是不异步请求,默认为true,如果设置为false,同步语法将锁住浏览器,等待操作
完成才可以执行其他操作。
beforeSend Function 发送语法前可修改XMLHttpRequest对象的函数,如添加自定义的HTTP头,XMLHttp
Request是唯一的参数,该函数如果返回false,可以取消本次Ajax请求
cache Boolean 设置缓存。默认为true
complete Function 请求完成后回调函数(请求成功或者失败都调用),该函数包含两个参数,XMLHttp
Request对象和一个描述成功请求类型的字符串。
contentType String 发送信息到服务器时内容编码类型。默认为:application/x-www-form-urlencoded
data Object,String 发送到服务器的数据,必须为key/value格式。
dataFilter Function 给Ajax返回的原始数据进行预处理的函数,提供data和type两个参数:
data是Ajax返回的原始数据,type是调用jQuery.ajax()时提供的dataType参数。
函数返回的值将由jQuery进一步处理
dataType String 预期服务器返回的数据类型,如果不指定,jQuery自动根据HTTP包含的MIME
信息返回responseXML或responseText,并作为回调函数参数传递,可用值:
xml、html、script、json、jsonp、text
error Function 请求失败时调用函数。该函数包含了三个参数:XMLHttpRequest对象、错误信息(可选)
、捕获的错误对象。如果发生了错误,错误信息除了得到null之外,还可能是
timeout、error、notmodified、parseerror
global Boolean 是否触发全局Ajax事件,默认值为true。设置为false将不会触发全局Ajax事件,
如:ajaxStart或ajaxStop可用于控制不同的Ajax事件
ifModified Boolean 仅在服务器数据改变时获取数据,默认值为false。使用HTTP包含的Last-Modified
头信息进行判断。
jsonp String 在一个jsonp请求中重写回调函数的名字。这个值用来替代在“callback=?”这种
GET或POST请求中URL参数里的callback部分,比如{jsonp:"onJsonPLoad"}会导致
将"onJsonPLoad=?"传递给服务器
password String 用于响应HTTP访问认证请求的密码。
processData Boolean 发送的数据将被转换为对象,默认值为true,
scriptCharset String 只有当请求dataType为jsonp或script,并且type是GET才会用于强制修改charset。
通常在本地和远程的内容编码不同时使用。
success Function 请求成功后的回调函数。函数的参数由服务器返回,并根据dataType参数进行处理
后的数据:描述状态的字符串
timeout Number 设置请求超时时间(毫秒)。此设置将覆盖全局设置
type String 设置请求方式,如POST或GET,默认为GET。
url String 发送请求的地址,默认为当前页面地址
username String 用于响应HTTP访问认证请求的用户名
xhr Function 需要返回一个XMLHttpRequest对象。
四、跟踪状态
jQuery在XMLHttpRequest对象定义的readyState属性基础上,对异步交互中服务器响应状态进行封装,提供
了6个响应事件。
事件 说明
ajaxStart() Ajax请求开始时进行响应
ajaxSend() Ajax请求发送前进行响应
ajaxComplete() 完成时
ajaxSuccess() 成功时
ajaxStop() 结束时
ajaxError() 发生错误时
五、载入文件
遵循Ajax异步交互的设计原则,jQuery定义了可以加载网页文档的方法load()。
load() 方法能够把加载的网页文件附加到指定的网页标签中。
比如:
$("div").load("test.html");
可以使用ajax()方法可以替换load()方法,因为load()方法是以ajax()方法底层来实现的。
使用以下代替
var str=($.ajax(
{
url:"test.html",
async:false
})).responseText;
$("div").html(str);
六、预设Ajax选项
对于频繁与服务器进行交互的页面来说,每一次交互都要设置很多选项,为些,jQuery定义了ajaxSetup()方法,该方法
可以预设异步交互中通用选项,从而减轻频繁设置选项的烦琐。
ajaxSetup()方法的参数仅包含一个参数选项的列表对象,这与ajax()方法的参数选项设置是相同的。在该方法中设置的选项,可以实现全局共享,从而在具体交互中只需要设置个性化参数即可。
七、预处理字符串
JavaScript语法和XML数据实现客户端与服务器端进行异步通信的一种方法。
jQuery封装了Ajax 的交互过程,用户不需要考虑XMLHttpRequest对象的兼容性问题,以及使用XMLHttpReques建立连接
、发送请求、发送方式、接收方式等。只需要用几个简单的jQuery定义的方法就能实现异步通信。
一、使用GET请求
jQuery定义了get()方法,专门负责通过运程HTTP GET 请求方式载入信息。该方法是一个简单的
GET请求功能,以取代复杂的$.ajax()方法
get()方法具有四个参数:
1、第一个参数表示要请求的页面的URL地址
2、第二个参数表示一个对象结构的名/值对列表 如:{a:"A",b:"B"}
3、第三个参数表示异步交互成功之后调用的回调函数。回调函数的参数值为服务器端响应的数据信息。
4、第四个参数表示服务器端响应信息返回的内容样式,如XML、HTML、Script、Json和Text或者_default
注:只有第一个参数是必需的。
get()方法能够在请求成功时调用回调函数,如果需要在出错时执行函数,则必须使用$.ajax()方法。
二、使用POST请求
jQuery定义了post()方法,专门负责通过远程HTTP POST请求方式载入信息。该方法是一个简单的的
POST请求功能,以取代复杂的$.ajax()方法。
post()方法包含4个参数:
1、第一个参数表示要请求的页面的URL地址
2、第二个参数表示一个对象结构的名/值对列表 如:{a:"A",b:"B"}
3、第三个参数表示异步交互成功之后调用的回调函数。回调函数的参数值为服务器端响应的数据信息。
4、第四个参数表示服务器端响应信息返回的内容样式,如XML、HTML、Script、Json和Text或者_default
注:用法与get()方法完全相同,不过只有请求方式不同而已。
不管是get()方法,还是post()方法,它们都是一种简单的请求方式,对于特殊的数据请求和响应处理
,应该选择$.ajax()方法,$.ajax()方法的参数比较多且复杂,能够处理各类特殊的异步交互行为
三、使用ajax()请求
ajax()方法是jQuery实现Ajax的底层方法,也就是说这是get()、post()等方法基础。
ajax()方法只有一个参数,即一个列表结构的对象,包含各配置及回调函数信息。
如:
$.ajax(
{
type:"GET",//请求方式
url:"test.js",//请求文件的URL
dataType:"script"//响应的数据类型
}
)
ajax()方法的参数选项列表
参数 数据类型 说明
async boolean 设置是不异步请求,默认为true,如果设置为false,同步语法将锁住浏览器,等待操作
完成才可以执行其他操作。
beforeSend Function 发送语法前可修改XMLHttpRequest对象的函数,如添加自定义的HTTP头,XMLHttp
Request是唯一的参数,该函数如果返回false,可以取消本次Ajax请求
cache Boolean 设置缓存。默认为true
complete Function 请求完成后回调函数(请求成功或者失败都调用),该函数包含两个参数,XMLHttp
Request对象和一个描述成功请求类型的字符串。
contentType String 发送信息到服务器时内容编码类型。默认为:application/x-www-form-urlencoded
data Object,String 发送到服务器的数据,必须为key/value格式。
dataFilter Function 给Ajax返回的原始数据进行预处理的函数,提供data和type两个参数:
data是Ajax返回的原始数据,type是调用jQuery.ajax()时提供的dataType参数。
函数返回的值将由jQuery进一步处理
dataType String 预期服务器返回的数据类型,如果不指定,jQuery自动根据HTTP包含的MIME
信息返回responseXML或responseText,并作为回调函数参数传递,可用值:
xml、html、script、json、jsonp、text
error Function 请求失败时调用函数。该函数包含了三个参数:XMLHttpRequest对象、错误信息(可选)
、捕获的错误对象。如果发生了错误,错误信息除了得到null之外,还可能是
timeout、error、notmodified、parseerror
global Boolean 是否触发全局Ajax事件,默认值为true。设置为false将不会触发全局Ajax事件,
如:ajaxStart或ajaxStop可用于控制不同的Ajax事件
ifModified Boolean 仅在服务器数据改变时获取数据,默认值为false。使用HTTP包含的Last-Modified
头信息进行判断。
jsonp String 在一个jsonp请求中重写回调函数的名字。这个值用来替代在“callback=?”这种
GET或POST请求中URL参数里的callback部分,比如{jsonp:"onJsonPLoad"}会导致
将"onJsonPLoad=?"传递给服务器
password String 用于响应HTTP访问认证请求的密码。
processData Boolean 发送的数据将被转换为对象,默认值为true,
scriptCharset String 只有当请求dataType为jsonp或script,并且type是GET才会用于强制修改charset。
通常在本地和远程的内容编码不同时使用。
success Function 请求成功后的回调函数。函数的参数由服务器返回,并根据dataType参数进行处理
后的数据:描述状态的字符串
timeout Number 设置请求超时时间(毫秒)。此设置将覆盖全局设置
type String 设置请求方式,如POST或GET,默认为GET。
url String 发送请求的地址,默认为当前页面地址
username String 用于响应HTTP访问认证请求的用户名
xhr Function 需要返回一个XMLHttpRequest对象。
四、跟踪状态
jQuery在XMLHttpRequest对象定义的readyState属性基础上,对异步交互中服务器响应状态进行封装,提供
了6个响应事件。
事件 说明
ajaxStart() Ajax请求开始时进行响应
ajaxSend() Ajax请求发送前进行响应
ajaxComplete() 完成时
ajaxSuccess() 成功时
ajaxStop() 结束时
ajaxError() 发生错误时
五、载入文件
遵循Ajax异步交互的设计原则,jQuery定义了可以加载网页文档的方法load()。
load() 方法能够把加载的网页文件附加到指定的网页标签中。
比如:
$("div").load("test.html");
可以使用ajax()方法可以替换load()方法,因为load()方法是以ajax()方法底层来实现的。
使用以下代替
var str=($.ajax(
{
url:"test.html",
async:false
})).responseText;
$("div").html(str);
六、预设Ajax选项
对于频繁与服务器进行交互的页面来说,每一次交互都要设置很多选项,为些,jQuery定义了ajaxSetup()方法,该方法
可以预设异步交互中通用选项,从而减轻频繁设置选项的烦琐。
ajaxSetup()方法的参数仅包含一个参数选项的列表对象,这与ajax()方法的参数选项设置是相同的。在该方法中设置的选项,可以实现全局共享,从而在具体交互中只需要设置个性化参数即可。
七、预处理字符串
0 0
- 21、使用jQuery封装后的Ajax
- jQuery-jquery封装的ajax使用总结
- 封装jQuery的ajax
- jQuery封装的Ajax方法
- jQuery对AJAX的封装
- JQuery对Ajax的封装
- JQuery封装的ajax调用
- 基于jquery的ajax封装
- Jquery ajax的二次封装
- jQuery对Ajax的封装
- jQuery实现Ajax的封装
- jquery对Ajax的封装
- JQuery封装的ajax方法
- JQuery validate 的使用(使用ajax来提交数据)(ajax如何封装表单数据)
- jquery封装ajax(建议使用比较简单)
- 对jquery的ajax的一个封装
- jquery封装的ajax的请求
- jquery的封装ajax的get请求
- 华为机试三道题(Java实现)
- 19、使用jQuery管理事件
- 20、jQuery页面初始化
- version `GLIBC_2.14' not found 解决方法.
- 深入挖掘IDR_MAINFRAME
- 21、使用jQuery封装后的Ajax
- linux c 多目标文件链接
- Red and Black(DFS)
- CSS(层叠样式表)基础知识
- C/C++求两个数的平均值
- 22、操作CSS之使用JavaScript
- 第十一章 使用数据处理函数
- 加载图标LoadIcon ,SetIcon
- OCP 1Z0 053 97