第一:Ajax
Ajax:是一种不用刷新整个页面便可与服务器通讯的方法,可以将Ajax当作XMLHttpRequest对象的代名词(XMLHttpRequest:该对象是对javaScript的一个扩展,可使网页与服务进行通信,是创建Ajax应用的最佳选择)。
从技术方面来看,Ajax并不是一项新技术,而是几种技术聚合在一起形成的,主要有以下几种
1、服务器端语言:具备向浏览器发送特定信息的能力
2、XML:(eXtensible Markup Language,可扩展标记语言)是一种描述数据的格式。Ajax程序需要某种格式化的格式来在服务器和客户端之间传递信息,XML是其中的一种
3、XHTML(eXtended Hypertext Markup Language,使用扩展超媒体标记语言)和css(Cascading Style Sheet,级联样式单)标准化呈现;
4、DOM:实现动态显示和交互
5、使用XMLHTTP组件XMLHttpRequest对象进行异步数据读取
6、使用JavaScript绑定和处理所有数据
第二:XMLHttpRequest对象
XMLHttpRequest在不同浏览器上的实现是兼容的,所以可以使用同样的方式访问XMLHttpRequest实例的属性和方法,而不讨论这个实例创建的方法是什么。
1、方法:
absot():停止当前请求
getAllResponseHeaders():把Http请求的所有响应首部作为键值对返回
getResponseHeader(“header”):返回制定首部的串值
open(“method”,“url”):建立对服务器的调用,Method参数可以是Get,post或put,url参数可是相对url或绝对url
send(content):向服务器发送请求
setRequestHeader(“header”,“value”):把指定首部设置为所提供的值,在设置任何首部之前必须先调用open()
2、属性
onreadystatechange:每个状态改变是都会触发这个时间处理器,通常会调用一个Javascript函数
readyState:请求的状态。有5个可取值,0:初始化、1:正在加载:、2:已经加载,3:交互中,4:完成
responseText:服务器的响应,表示一个串
responseXML:服务器的响应,表示XML,这个对象可以解析为COM对象
status:服务器的HTTP状态码(200对应OK,404对应NotFound)
statusText:HTTP状态码的相应文本(OK或NOtFonund)
3、例子:利用XMLHttpRequest实例与服务器进行通信
<script type="text/javascript">
window.onload=function(){
document.getElementsByTagName("a")[0].onclick=function(){
//创建一个XMLHttpRequest对象
var resquest=new XMLHttpRequest();
//准备发送请求的数据
var url=this.href;
var method="Get";
//调用XMLHttpRequest对象的open方法
request.open(method,url);
//调用XMLHttpRequest对象的send方法
request.send(null);
//为XMLHttpRequest对象添加onreadstatechange函数
request.onreadystatechange=function(){
//判断响应是否完成:XMLHttpRequest对象的readyState属性值为4的时候
if(request.readystate==4){
//再判断响应是否可用:XMLHttpRequest对象status属性值为200
if(request.status==200||request.status==304){
//打印响应结果
alert(request.responseText);
}
}
}
}
}
</script>
下一篇:Ajax所使用的三种格式