AJAX(Asynchronous Javascript and XML)这个最近因为Google而火红的名词已经在网络界备受关注。据我所知,Microsoft的最新网络服务网站www.live.com也采用了AJAX的技术。何以AJAX让那么多网站为它神魂颠倒呢?到底有什么过人的魅力?答案是 --- 无刷新浏览。
当我们在浏览一个网页的时候,会发现到在呈交请求(request)到服务器的时候,页面会刷新好让服务器能够将回复显示在网页上。这个是一个定律,一般上浏览器在发出POST或GET的请求后都会等到下载一个网页的指令,因此页面也会刷新。AJAX的做法则是颠覆这个传统,不用浏览器呈交请求而改用一个XMLHttpRequest的物件完成所有的工作,包括发出请求,处理服务器回复,最令人兴奋的是,还可以处理服务器回复的XML文件!XML可以说是一个小型的数据库,而且处理起来远远比纯文档来得方便得多;XMLHttpRequest是在幕后悄悄把请求送出去和处理回复,过程中也不必刷新浏览器。如果想一睹AJAX的效果可以到Blogger主页,那个一直在轮播的Blog名字就是AJAX的效果,名单会在一定的时间内更新,所以即使你把Blogger的主页开上整天,你还是可以看到最新的名单!
是时候深入了解AJAX了,顾名思义,Javascript将扮演着非常重要的角色,当然Javascript只是一个client-side脚本语言的代表,同样的你也可以使用VBScript之类的脚本语言。不过,我接下来将用JavaScript作为主要的脚本语言。在AJAX里,Javascript主要是通过DOM(Document Object Model)来操控所有的文本元素,包括HTML和XML,DOM是W3C的浏览器物件模式的标准,目前大部分的浏览器都支持,包括:IE6,FireFox,Netscape,Opera等。如果你对DOM一窍不通,我建议你先去了解它的运作,再来学习如何运用XMLHttpRequest.
除了XMLHttpRequest之外,你还需要有一个处理请求的对象,通常是网页服务器文件或XML文件。我在接下来的例子中将运用到PHP服务器脚本语言文件,它将扮演处理请求和传回回复的角色。如果你了解这些运作,你会发现到其实AJAX不外乎是普通的HTTP send/receive罢了,唯一的不同点就是所有的运作都在用户界面背后进行。
完成一个AJAX程序,有以下几个步骤:
1.生成一个XMLHttpRequest物件(IE则生成一个XMLHTTP的ActiveX物件)。
2.利用XMLHttpRequest物件向服务器发出请求。
3.搜集回复资料(资料可以以纯文档或XML的格式存在)。
4.显示回复结果。
步骤2和3是最关键的两个步骤,也就是send和receive。
待续....
AJAX与PHP的完美结合(一)
Friday, November 25, 2005
Ore : 10:23 AM
Ore : 10:23 AM
[ Ö÷Ò³ ]
Comments for AJAX与PHP的完美结合(一)