易截截图软件、单文件、免安装、纯绿色、仅160KB

ajax原理

Ajax的原理简单来说通过XmlHttpRequest对象来向服务器发异步请求,从服务器获得数据,然后用javascript来操作DOM而更新页面。这其中最关键的一步就是从服务器获得请求数据。要清楚这个过程和原理,我们必须对 XMLHttpRequest有所了解。
XMLHttpRequest是ajax的核心机制,它是在IE5中首先引入的,是一种支持异步请求的技术。简单的说,也就是javascript可以及时向服务器提出请求和处理响应,而不阻塞用户。达到无刷新的效果。
所以我们先从XMLHttpRequest讲起,来看看它的工作原理。
首先,我们先来看看XMLHttpRequest这个对象的属性。
它的属性有:
onreadystatechange 每次状态改变所触发事件的事件处理程序。
responseText     从服务器进程返回数据的字符串形式。
responseXML   从服务器进程返回的DOM兼容的文档数据对象。
status           从服务器返回的数字代码,比如常见的404(未找到)和200(已就绪)
status Text       伴随状态码的字符串信息
readyState       对象状态值
0 (未初始化) 对象已建立,但是尚未初始化(尚未调用open方法)
1 (初始化) 对象已建立,尚未调用send方法
2 (发送数据) send方法已调用,但是当前的状态及http头未知
3 (数据传送中) 已接收部分数据,因为响应及http头不全,这时通过responseBody和responseText获取部分数据会出现错误,
4 (完成) 数据接收完毕,此时可以通过通过responseXml和responseText获取完整的回应数据
但是,由于各浏览器之间存在差异,所以创建一个XMLHttpRequest对象可能需要不同的方法。这个差异主要体现在IE和其它浏览器之间。下面是一个比较标准的创建XMLHttpRequest对象的方法。
function CreateXmlHttp()
   {
  
   //非IE浏览器创建XmlHttpRequest对象
    if(window.XmlHttpRequest)
    {
     xmlhttp=new XmlHttpRequest();
    }
    //IE浏览器创建XmlHttpRequest对象
     if(window.ActiveXObject)
    {
    try
    {
     xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");&


相关文档:

Ajax特效:动态加载的FAQ 之一


图1.1  实例运行效果
1.1.1  技术要点
动态加载FAQ的过程主要是利用XMLHttpRequest(以下简称XHR)对象与服务端通信,根据用户单击的感兴趣问题动态将内容加载到页面中。在具体实现时,有两点要注意的内容。
1.对每个问题进行唯一标识
FAQ主要包含问题与解答两个部分,用户单击一个问题时,服务器必须知道 ......

Ajax特效 动态加载的FAQ 之二

本实例使用名为faq的数据库表,包含的数据如图1.2所示。具体的创建数据表语句如下:
 
CREATE TABLE 'faq' (
  'id' int(11) NOT NULL auto_increment,
  'faq' varchar(255) NOT NULL,
  'detail' varchar(255) NOT NULL,
  PRIMARY KEY  ('id')
)
图1.2  表faq包含的数据
主 ......

Ajax特效 根据邮政编码获取地区信息 之二

数据库设计
本实例使用名为postalcode的数据库表,包含的部分数据如图1.4所示。具体的创建数据表语句如下:
 
CREATE TABLE 'postalcode' (
  'id' int(11) NOT NULL auto_increment,
  'area' varchar(255) NOT NULL,
  'city' varchar(255) NOT NULL,
  'code' varchar(6) NOT NULL,
&n ......

Ajax特效 根据邮政编码获取地区信息 之四

服务器端响应文件postalcode.jsp
服务器响应文件根据用户输入的邮政编码,从数据库中查询对应的地区信息。如果没有取到,则返回空字符串。
 
<%@ page contentType="text/plain; charset=UTF-8"%>
<%@ page language="java"%>
<%@ page import="java.sql.*,ajax.db.DBUtils"%>
<%!
  ......

注册用户名验证(ajax版)

<!--注册验证用户名是否存在(不刷新)(2008-07-10 11:22:08)标签:document if color ch rs 注册 ajax 验证 用户名 it   分类:网络编程应用
针对ASP的 用的是AJAX写的
分两部分
 
-->
1.注册页面
JS部分:
<script language="JavaScript">
function chuser(){
  var csuser=docume ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号