首先有个很好的资源给大家link下:www.w3schools.com/Ajax/ajax_intro.asp这是一篇介绍AJAX的文章,文章是英文的,但是很容易看懂。我觉得对初学者特别适合。文章不长却将AJAX的基本原理阐释的很清楚。而且几种典型的实例也很好。
自己初学AJAX,花了几个小时看了下,下面把自己的看法和理解总结一下,并且有些地方希望高手给以指正和指导:
1、AJAX = Asynchronous JavaScript and XML 异步JavaScript和XML
2、AJAX的基础:AJAX其实是建立在已有标准上的一种技术:他是基于Javascript、XML、HTML、CSS标准的。
3、我们为什么要用AJAX技术,也可以说是AJAX的好处(自己的理解):首先要明白我们现在用B/S架构的程序,因为B/S程序很容易部署,只有你有浏览器就OK!对软件升级也很简便,不用像C/S程序那样程序升级的时候需要没每个客户端升级。想想这是多么的麻烦。但利用浏览器也有很多不好的地方啊!浏览器的展示给大家的没以前C/S是那么好看了,访问网站需要时间,程序的交互性也差了。而AJAX技术在以上缺陷中带来好处,AJAX极大的丰富了客户端,做到大家常听说的胖客户端,由于AJAX在同一页面直接与server交互,可以带来速度的提升,在这同时AJAX使我们所见不那么单调。AJAX还有其他好的好处大家在学习中可以慢慢体会。
4、AJAX的基本原理:AJAX是利用浏览器内置的XMLHttpRequest object给server发送请求,然后server端的脚本来回应请求,同时也有XMLHttpRequest object来出来这个回应。觉得AJAX的原理还是很清晰的。很显然XMLHttpRequest object是AJAX的最重要的一个对象。
5、XMLHttpRequest object:现在基本所有的浏览器都支持这个对象,这也为AJAX发展扫清了障碍。XMLHttpRequest object有三个重要的property:onreadystatechange property、readyState property、responseText property。简单说明下这三个属性,当我们给server发送一个Request后server给我们一个response,我们需要一个函数来处理这个response,onreadystatechange就是用来存储这个处理response的函数。readyState属性是用来存储response的status的,每当这个状态变化的时候onreadystatechange存储的函数就会执行。这就是readyState的作用。readyState有四个状态如下表:
0 | The request is not initialized |
1 | The request has been set up |
2 | The request has been sent |
3 | The request is in process |
4 | The request is complete |
responseText属性是以用来response里的信息,让他在page中显示。
6、server端的脚本page可以用多种语言来写比如asp,php等。
可能这么简单写下大家还是不能很好的理解AJAX,所以建议大家把链接的那篇文章看下,肯定有所收获的,而且上面有很多例子,很简单但经典。
ok!就这么多了。