Ajax技术相关:
在你使用Ajax开发应用程序的过程中需要用到很多相关的技术,XMLHttpRequest,Javascript,DOM,XML等.当然你觉得要写很多javascript代码会很烦,你可以使用Ajax框架也可以.只是用不同的方式达到相同的效果而已.最终目的都是为了满足你的欲望.比如:Atlas.虽然这些东西不一定全部用到,但是XMLHttpRequest对象却是实现Ajax应用必不可少的核心技术.本质上来说Ajax是客户端技术.采用Javascrip实现.所以Javascript面向对象编程技术要求比较高.
Ajax无刷新页面的特点主要是XMLHttpRequest对象.这种暗渡陈仓的方式减轻了服务器的负担又加快了响应速度.说明XMLHttpRequest肚子里面还是有内容的.比如下面的方法和属性:
XMLHttpRequest对象方法
Abort() | 停止当前请求 |
getAlllResponseHeaders() | 将Http请求的所有响应首部作为Key/value对的形式返回 |
getResponseHeader(“headerLabel”) | 返回指定首部的字符串值 |
Open(“method”,”URL”[,asyncFlag[,”username”[,”password”]]]) | 建立对服务器的调用.method可以是Get,Post或者put;URL可以是相对的或者绝对的; asyncFlag:是否非同步标记 username,password: 用户名密码 |
Send() | 向服务器发送请求 |
setRequestHeader(“label”,”value”) | 把指定的首部设置为所提供的值.在调用此方法前先调用open(). |
XMLHttpRequest对象方法
Onreadystatechange | 状态必变时的事件触发器.每个事件改变都会触发这个事件. |
Readystate | 对象状态:0:未初始化;1:正在加载;2:已加载;3:交互中;4:完成. |
responseText | 服务器响应的字符串 |
responseXML | 服务器的响应,XML,可以解析为DOM |
Status | 服务器返回的HTTP状态码 |
statusText | 状态码的相应文本. |
这些东西都是一个一厢情愿的事情.理论不代表实践.那么我就把这个一厢情愿的事情加点光彩.
var xmlHttp;
if(window.XMLHttpRequest)
{
xmlHttp=new XMLHttpRequest();
}
else
{
xmlHttp= new ActiveXObject("Microsoft.XMLHTTP");
}
//判断是否IE浏览器,如果是的话创建XMLHTTP ActiveX对象,不是就创建XMLHttpRequest对象.
xmlHttp.open("GET","URL");//调用服务器
xmlHttp.onreadystatechange=callback;//设置状态改变事件响应函数
xmlHttp.send(null);
callback函数,xml对象改变事件的响应函数.根据应用的需要执行不同的事情
function calllback()
{
}