`
walsh
  • 浏览: 432669 次
  • 性别: Icon_minigender_1
  • 来自: 郑州
社区版块
存档分类
最新评论

揭开AJAX神秘面纱

阅读更多
    AJAX,即"Asynchronous JavaScript And XML"的缩写,可翻译为异步JavaScript及XML技术。其核心是一个寄宿在浏览器中名为XMLHTTPRequest的类。通过此类,可以做到无需提交表单就可以实现与服务器的连接;无需刷新整个页面,就可以动态更新页面中一部分的内容。XMLHTTPRequest通常使用XML作为数据交换的载体,但也可使用其他的载体,如纯文本。简单来说,就是通过XMLHTTPRequest发送信息给服务器,异步接收服务器处理并返回信息,然后通过JavaScript动态更新页面的部分内容。
尽管AJAX近来非常火爆,但AJAX并非新的技术,正如其名所示,只不过是JavaScript加上XML的技术罢了。而且使用上非常简单。
应用AJAX的流程:

  • 1、定义一个事件处理器
  • 2、获取XMLHTTPRequest,并将事件处理器注册给它
  • 3、与服务器连接
  • 4、发送信息
  • 5、服务器返回处理完毕的信息
  • 6、每当XMLHTTPRequest的状态发生变化,自动触发事件处理器
  • 7、事件处理器动态更新页面


1、定义事件处理器
readyState属性用来判断服务器返回信息的状态。其值是一个从0至4的整数,对应于:

0:对象已创建,但未初始化(未调用open()方法)
1:对象已创建,但未调用send()方法
2:已调用send()方法,但status及headers还未可用
3:已经传回部分数据,但status及headers还未完全可用
4:已经收到所有数据,可使用所有数据
2、获取XMLHTTPRequest,并将事件处理器注册给它
注意:要使用XMLHTTPRequest,需要IE5.0以上的版本。
2.1 取得XMLHTTPRequest
在IE7.0之前获得XMLHTTPRequest,使用如下代码:
if (window.ActiveXObject) { xmlHttp = new ActiveXObject("Microsoft.XMLHTTP"); }
而在IE7.0中:
if (window.XMLHttpRequest) { xmlHttp = new XMLHttpRequest }
2.2 注册事件处理器
xmlHttp.onreadystatechange = showGift;
showGift为传入的方法名,每当XMLHTTPRequest的状态发生改变时,将执行此方法

3. 与服务器连接并发送 xmlHttp.open("GET", url , true)
其方法签名如下: xmlHttp.open(bstrMethod, bstrUrl, varAsync, bstrUser, bstrPassword)
其中:
bstrMethod: 连接方式,可用的有GET, POST, PUT, or PROPFIND
bstrUrl: 服务器的url
varAsync(可选): 调用是否异步,默认为true(调用立即返回)
bstrUser(可选):用户名,如果url需要验证时附上
bstrPassword(可选):密码,如果url需要验证时附上
open()方法可以直接打开一个xml文档,并通过xmlHttp的responseXML来读取相应的节点。如下例: xmlHttp.open("GET","http://localhost/books.xml", false); xmlHttp.send(); var book = xmlhttp.responseXML.selectSingleNode("//book[@id='bk101']");


4、发送信息 xmlHttp.send(null)
其方法签名如下: xmlHttp.send( [varBody])
varBody(可选): 可为字符串或xml等数据,可以为null。无返回值 此方法在open()设为异步时,立即返回;在open()设为同步时,必须等到reponse对象从服务器中返回时才返回。

5、服务器返回处理完毕的信息

6、客户端自动探知XMLHTTPRequest的状态已经发生变化,自动触发事件处理器

7、事件处理器动态更新页面

结语:
由上7步可见,AJAX并不复杂,远比想像中要简单得多。牢牢记住这一点,“AJAX让我们在不用刷新页面的情况下,可以动态地更新网页部分内容”,然后运用到各种需要用到这种性能的场合,将使我们的网页更有创意。




分享到:
评论

相关推荐

    Ajax021545

    #### 引言:揭开AJAX神秘面纱 AJAX,一个在Web2.0时代闪耀的名字,它不仅是一项技术,更是一种理念,代表着现代Web开发的前沿趋势。对于初次接触AJAX的新手而言,理解其核心价值及应用场景,无疑是踏上前端开发之旅...

    揭开AJAX神秘的面纱(AJAX个人学习笔记)第1/5页

    【AJAX技术详解】 AJAX,全称Asynchronous JavaScript and XML,是一种用于创建快速动态网页的技术。通过在后台与服务器进行少量数据交换,AJAX可以让网页实现异步更新,即无需重新加载整个网页就能更新部分网页...

    ASP.NET 2.0入门与提高系列课程(1):揭开Orcas神秘的面纱

    这个“ASP.NET 2.0入门与提高系列课程(1):揭开Orcas神秘的面纱”是一个面向初学者和进阶者的教程,旨在帮助用户深入了解并掌握ASP.NET 2.0的核心概念和技术。 首先,让我们了解一下ASP.NET 2.0的关键特性: 1. **...

    Ajax从入门到精通(附教学示例)

    他还揭开了 Ajax 核心概念的神秘面纱,包括 XMLHttpRequest 对象。 五年前,如果不知道 XML,您就是一只无人重视的丑小鸭。十八个月前,Ruby 成了关注的中心,不知道 Ruby 的程序员只能坐冷板凳了。今天,如果想跟上...

    Ajax 从入门到精通(电子书+源代码)(高清PDF中文版)

    他还揭开了 Ajax 核心概念的神秘面纱,包括XMLHttpRequest 对象。 五年前,如果不知道 XML,您就是一只无人重视的丑小鸭。十八个月前,Ruby 成了关注的中心,不知道Ruby 的程序员只能坐冷板凳了。今天,如果想跟上...

    掌 握 AJAX

    Ajax 由 HTML、JavaScript™ 技术、DHTML 和 DOM 组成,这一杰出的方法可以将笨拙的 Web 界面转化成交互性的 Ajax 应用程序。本系列的作者是一位 ...他还揭开了 Ajax 核心概念的神秘面纱,包括 XMLHttpRequest 对象。

    《4天学会Ajax》教程 pdf

    《4天学会Ajax》中文教程,pdf高清淅格式。第一天带您认识Ajax;第二天走进JavaScript 和Ajax异步请求;第三天学习Ajax高级请求和响应;...他还揭开了Ajax 核心概念的神秘面纱,包括XMLHttpRequest 对象。

    Ajax完全中文手册.chm

    Ajax 由 HTML、JavaScript™ 技术、DHTML 和 DOM 组成,这一杰出的方法可以将笨拙的 Web 界面转化成交互性的 Ajax 应用程序。本文的作者是一位 Ajax...他还揭开了 Ajax 核心概念的神秘面纱,包括 XMLHttpRequest 对象。

    Head First Ajax(中文版).pdf

    Ajax 由 HTML、JavaScript™ 技术、DHTML 和 DOM 组成,这一杰出的方法可以将笨拙的 Web 界面转化成交互性的 Ajax 应用程序。本系列的作者是一位 Ajax...他还揭开了 Ajax 核心概念的神秘面纱,包括 XMLHttpRequest 对象

    ASP.NET AJAX深入浅出系列课程(1):ASP.NET AJAX 概述

    总的来说,"ASP.NET AJAX深入浅出系列课程(1):ASP.NET AJAX 概述"将引导学习者进入ASP.NET AJAX的世界,从基础到高级,逐步揭开其神秘面纱,帮助开发者构建更加高效、用户友好的Web应用程序。通过本课程的学习,...

    Ajax从入门到精通(电子书+源代码)

    他还揭开了 Ajax 核心概念的神秘面纱,包括XMLHttpRequest 对象。 五年前,如果不知道 XML,您就是一只无人重视的丑小鸭。十八个月前,Ruby 成了关注的中心,不知道Ruby 的程序员只能坐冷板凳了。今天,如果想跟上...

    3个ajax的教程,chm格式的you3个打包了,所以赏我个1分

    他还揭开了 Ajax 核心概念的神秘面纱,包括 XMLHttpRequest 对象。 五年前,如果不知道 XML,您就是一只无人重视的丑小鸭。十八个月前,Ruby 成了关注的中心,不知道 Ruby 的程序员只能坐冷板凳了。今天,如果想跟上...

    Ajax基础:四天学会Ajax chm

    Ajax基础:四天学会Ajax chm 本教程的作者是一位 Ajax 编程专家,他通过这本书向大家演示了HTML、JavaScript™ 技术、DHTML 和 DOM 这些技术是如何...他还揭开了 Ajax 核心概念的神秘面纱,包括 XMLHttpRequest 对象。

    掌握Ajax.rar

    他还揭开了 Ajax 核心概念的神秘面纱,包括 XMLHttpRequest 对象。 五年前,如果不知道 XML,您就是一只无人重视的丑小鸭。十八个月前,Ruby 成了关注的中心,不知道 Ruby 的程序员只能坐冷板凳了。今天,如果想跟...

    四天学会Ajax.rar

    他还揭开了 Ajax 核心概念的神秘面纱,包括 XMLHttpRequest 对象。 五年前,如果不知道 XML,您就是一只无人重视的丑小鸭。十八个月前,Ruby 成了关注的中心,不知道 Ruby 的程序员只能坐冷板凳了。今天,如果想跟...

    ajax教程 JavaScript™ 技术

    Ajax 由 HTML、JavaScript™ 技术、DHTML 和 DOM 组成,这一杰出的方法可 以将笨拙的 Web 界面转化成交互性的 Ajax 应用程序。...他还揭开了 Ajax 核心概念的神秘面纱,包括 XMLHttpRequest 对象。

    AJAX开发入门教程

    Ajax 由 HTML、JavaScript技术、DHTML 和 DOM 组成,这一杰出的方法可以将笨拙的 Web 界面转化成交互性的 Ajax 应用程序。作者是一位 Ajax 专家,他...他还揭开了 Ajax 核心概念的神秘面纱,包括 XMLHttpRequest 对象。

    Ajax入门手册chm

    Ajax 由 HTML、JavaScript™ 技术、DHTML 和 DOM 组成,这一杰出的方法可以将笨拙的 Web 界面转化成交互性的 Ajax 应用程序。本文的作者是一位 Ajax...他还揭开了 Ajax 核心概念的神秘面纱,包括 XMLHttpRequest 对象。

    4天学会ajax XMLHttpRequest

    本文的作者是一位 Ajax 专家,他演示了这些技术如何协同工作 —— 从总体...他还揭开了 Ajax 核心概念的神秘面纱,包括 XMLHttpRequest 对象。作者对ajax做了深入浅出讲解,很适合初学者学习,在这里和大家共同分享了。

Global site tag (gtag.js) - Google Analytics