Ajax详解及使⽤Ajax时的返回值类型有哪些?
Ajax详解
Ajax = 异步 JavaScript 和 XML。
Ajax 是⼀种⽤于创建快速动态⽹页的技术。
通过在后台与服务器进⾏少量数据交换,Ajax 可以使⽹页实现异步更新。这意味着可以在不重新加载整个⽹页的情况下,对⽹页的某部分进⾏更新。
传统的⽹页(不使⽤ Ajax)如果需要更新内容,必需重载整个⽹页⾯。
(注:图⽚来⾃⽹络)
如何使⽤Ajax技术
⾸先,需要获取XMLHttpRequest对象:
var xhr;
xhr = new XMLHttpRequest();
XMLHttpRequest对象有5个核⼼属性:
onreadystatechange:当准备状态发⽣变化
readyState:准备状态,该属性的值可能是0~4之间的数字,0表⽰尚未建⽴连接,4表⽰接收到响应
status:响应码,例如404、200
json值的类型有哪些responseText:响应的字符串
responseXML:响应的XML
当需要发出请求时,需要XMLHttpRequest对象的open()和send()⽅法:
open(请求⽅式, 请求路径, 是否异步)
send()
使⽤演⽰:
// 异步检查⽤户名是否存在
function checkUsername(username) {
// 获取XMLHttpRequest对象
var xhr = new XMLHttpRequest();
var url = "check_username.do?username="
+ username;
// 配置onreadystatechange
// 当服务器已经响应(4)且响应码是200时
if (adyState == 4
&& xhr.status == 200) {
// 根据服务器的响应,显⽰响应的提⽰消息
if (sponseText == "1") {
// 表⽰⽤户名存在
// 表⽰⽤户名不存在
}
};
// 调⽤函数
xhr.open("GET", url, true);
xhr.send();
}
在JQuery中,Ajax有三种实现⽅式:
$.ajax({
"url":"",  //访问路径
"data":"",  // 需要传输的数据
"type":"",  // 请求⽅式
"dataType":"",  // 返回值类型
"success":function(obj){},      // 响应成功时的回调函数
"error":function(obj){}    // 响应失败时的回调函数
});
$.get(URL,callback);
$.post(URL,data,callback);
(注:以下内容来⾃)
使⽤Ajax时的返回值类型有哪些?
xml、html、script、JSON、jsonp、text
xml:返回XML⽂档,可⽤ jQuery 处理。
html:返回纯⽂本HTML信息;
script:返回纯⽂本JavaScript代码。不会⾃动缓存结果。除⾮设置了 “cache” 参数;
json:json⽅式和html⽅式在请求和服务器中完全是⼀样,请求的返回值实际上都是String对象,有两点不同,第⼀:html⽅式的时候并没有限制返回的字符串格式,⽽json⽅式的时候,必须符合json协议的规范。第⼆:html⽅式请求完成之后没有做任何的操作直接回调sucuess,⽽json多了⼀步就是加了eval,执⾏返回的字符串,看看源码data = eval_r("(" + data + ")");返回json对象;(⽅法的返回值是Javabean时,在响应体中响应成json字符串格式)
jsonp:jsonp⽅式的交互⽅式和js是⼀样的,本⾝xmlHttpRequest对象并不能跨域访问,但是script标签的src可以跨域访问,这⾥就注意两个概念:第⼀Ajax是不能跨域操作的,第⼆jQuery的jsonp是可以
跨域操作,jsonp到底是什么东西呢?他是⼀个⾮官⽅的定义,⽬前的规范,需要服务器和客户端进⾏配合使⽤;
text:返回纯⽂本字符串。

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。