首页 > 代码库 > 对AJAX技术的理解,创建,与应用

对AJAX技术的理解,创建,与应用

ajax的理解:
1. ajax是介于客户端与服务器端之间的一个机制,但这一机制是在前台的,利用前台的闲置功能,来进行前台与后台的数据交流,以达到增强用户体检,减少服务器压力,更有效的利用带宽的效果。
2. ajax是采用异步交互的机制。
3. ajax使用于页面局部刷新,按需求验证和取数据。
4. ajax缺点便是浏览器的兼容问题麻烦,与嵌入式移动端对ajax的支持不太理想。

5.ajax已经是一种web开发必备的技术,而且其优点远大于缺点。

6.ajax涉及到的主要技术有7种其中Javascript、XMLHttpRequest、DOM、XML为重点。

7. XMLHttpRequest对象

XMLHttpRequest是XMLHTTP组件的对象,通过这个对象,AJAX可以像桌面应用程序

一样只同服务器进行数据层面的交换,而不用每次都刷新界面,也不用每次将数据处

理的工作都交给服务器来做;这样既减轻 了服务器负担又加快了响应速度、缩短了用

户等待的时间

Javascript

Javascript一直被定位为客户端的脚本语言,应用最多的地方是表单数据的校验。现在

可以通过Javascript 操作XMLHttpRequest,来跟数据库打交道

DOM

DOM(Document Object Model)是提供给HTML和XML使用的一组API,提供了文件的

表述结构,并可以用它改变其中的内容和可见物。脚本语言通过DOM才可以跟页面进

行交互。Web开发人员可操作及建立文件的属性、方法以及事件都以对象来展现。比如,

document就代表页面对象本身。

XML

通过XML(Extensible Markup Language),可以规范的定义结构化数据,是网上传输的

数据和文档符合统的标准。用XML表述的数据和文档,可以很容易的让所有程序共享。
 

ajax的创建:
考虑兼容性:

1.浏览器分为IE与非IE,其中非IE是遵循W3C标准的,创建方式基本相同,而IE不一样,其每个版本创建的方式也有所不同。

2.创建ajax

</pre><pre name="code" class="php"><script>	function createAjax(){		var request=false;				//window对象中有XMLHttpRequest存在就是非IE,包括(IE7,IE8)		if(window.XMLHttpRequest){			request=new XMLHttpRequest();			有些浏览器是需要覆盖eMimeType			if(request.overrideMimeType){				request.overrideMimeType("text/xml");//指定文本类型			}		//window对象中有ActiveXObject属性存在就是IE		}else if(window.ActiveXObject){			//将IE各个版本的浏览器的参数放在一个数组里面var versions=['Microsoft.XMLHTTP', 'MSXML.XMLHTTP', 'Msxml2.XMLHTTP.7.0','Msxml2.XMLHTTP.6.0','Msxml2.XMLHTTP.5.0','Msxml2.XMLHTT4.0','MSXML2.XMLHTTP.3.0', 'MSXML2.XMLHTTP'];		//遍历这个数组,确定是那个版本,进行对应AJAX的创建		for(var i=0; i<versions.length; i++)			{				try{					request=new ActiveXObject(versions[i]);					if(request){return request;}				}catch(e){					request=false;				}			}	}	return request;	}	var ajax=createAjax();//创建AJAX 	alert(ajax);测试</script>

 

ajax的对象的方法与属性

1. XMLHttpRequest对象的属性:

onreadystatechange状态改变的事件触发器
readyState 对象状态(integer): 
      0 = 未初始化 1 = 读取中 2 = 已读取 3 = 交互中 4 = 完成
responseText 服务器进程返回数据的文本版本
responseXML 服务器进程返回数据的兼容DOM的XML文档对象
status 服务器返回的状态码, 如:404 = "文件未找到" 、200 ="成功"
statusText 服务器返回的状态文本信息

2. XMLHttpRequest对象的方法:

abort()停止当前请求
getAllResponseHeaders()作为字符串返回完整的headers
getResponseHeader("headerLabel")作为字符串返回单个的header标签
open("method","URL"[,asyncFlag[,"userName"[, "password"]]])设置未决的请求的目标 URL,方法,和其他参数
send(content) 发送请求
setRequestHeader("label", "value")设置header并和请求一起发送