论坛登陆 用户名:  密 码:
设为首页  加入收藏
08年北京名校秋季招生
名牌院校免试入学宽进严出,突破考分限制,名校与你零距离,以下院校按报名先后顺序录取,24小时网上报名覆盖全国
  您现在的位置: 中国教育招生在线 >> IT >> JAVA认证 >> IT正文
精华:AJAX开发简略 (第二部分)
 作者:佚名     2007-3-14 17:34:40        来源:不详  浏览次数:

 

 

 

 

 

 

 

 

七、AJAX开发
  到这里,已经可以清楚的知道AJAX是什么,AJAX能做什么,AJAX什么地方不好。如果你觉得AJAX真的能给你的开发工作带来改进的话,那么继续看看怎么使用AJAX吧。

7.1AJAX应用到的技术
  AJAX涉及到的7项技术中,个人认为JavascriptXMLHttpRequestDOMXML比较有用。

A
XMLHttpRequest对象
  XMLHttpRequestXMLHTTP组件的对象,通过这个对象,AJAX可以像桌面应用程序一样只同服务器进行数据层面的交换,而不用每次都刷新界面,也不用每次将数据处理的工作都交给服务器来做;这样既减轻了服务器负担又加快了响应速度、缩短了用户等待的时间。

  IE5.0开始,开发人员可以在Web页面内部使用XMLHTTP ActiveX组件扩展自身的功能,不用从当前的Web页面导航就可以直接传输数据到服务器或者从服务器接收数据。,Mozilla1.0以及NetScape7则是创建继承XML的代理类XMLHttpRequest;对于大多数情况,XMLHttpRequest对象和XMLHTTP组件很相似,方法和属性类似,只是部分属性不同。

XMLHttpRequest对象初始化:

  XMLHttpRequest对象的方法:

方法

描述

abort()

停止当前请求

getAllResponseHeaders()

作为字符串返回完整的headers

getResponseHeader("headerLabel")

作为字符串返回单个的header标签

open("method","URL"[,asyncFlag[,"userName"[, "password"]]])

设置未决的请求的目标 URL,方法,和其他参数

send(content)

发送请求

setRequestHeader("label", "value")

设置header并和请求一起发送

  XMLHttpRequest对象的属性:

属性

描述

onreadystatechange

状态改变的事件触发器

readyState

对象状态(integer):


0 =
未初始化
1 =
读取中
2 =
已读取
3 =
交互中
4 =
完成

responseText

服务器进程返回数据的文本版本

responseXML

服务器进程返回数据的兼容DOMXML文档对象

status

服务器返回的状态码, 如:404 = "文件未找到" 200 ="成功"

statusText

服务器返回的状态文本信息


B
Javascript
   Javascript一直被定位为客户端的脚本语言,应用最多的地方是表单数据的校验。现在,可以通过Javascript操作XMLHttpRequest,来跟数据库打交道。

C
DOM
   DOMDocument Object Model)是提供给HTMLXML使用的一组API,提供了文件的表述结构,并可以利用它改变其中的内容和可见物。脚本语言通过DOM才可以跟页面进行交互。Web开发人员可操作及建立文件的属性、方法以及事件都以对象来展现。比如,document就代表页面对象本身。

D
XML
  通过XMLExtensible Markup Language),可以规范的定义结构化数据,是网上传输的数据和文档符合统一的标准。用XML表述的数据和文档,可以很容易的让所有程序共享。

7.2
AJAX开发框架
  这里,我们通过一步步的解析,来形成一个发送和接收XMLHttpRequest请求的程序框架。AJAX实质上也是遵循Request/Server模式,所以这个框架基本的流程也是:对象初始化à发送请求à服务器接收à服务器返回à客户端接收à修改客户端页面内容。只不过这个过程是异步的。

A
、初始化对象并发出XMLHttpRequest请求
  为了让Javascript可以向服务器发送HTTP请求,必须使用XMLHttpRequest对象。使用之前,要先将XMLHttpRequest对象实例化。之前说过,各个浏览器对这个实例化过程实现不同。IEActiveX控件的形式提供,而Mozilla等浏览器则直接以XMLHttpRequest类的形式提供。为了让编写的程序能够跨浏览器运行,要这样写:

if (window.XMLHttpRequest) { // Mozilla, Safari, ...

       http_request = new XMLHttpRequest();

  }

  else if (window.ActiveXObject) { // IE

       http_request = new ActiveXObject("Microsoft.XMLHTTP");

}

  有些版本的Mozilla浏览器处理服务器返回的未包含XML mime-type头部信息的内容时会出错。因此,要确保返回的内容包含text/xml信息。

http_request = new XMLHttpRequest();

http_request.overrideMimeType('text/xml');

B、指定响应处理函数
  接下来要指定当服务器返回信息时客户端的处理方式。只要将相应的处理函数名称赋给XMLHttpRequest对象的onreadystatechange属性就可以了。比如:

http_request.onreadystatechange = processRequest;

  需要指出的时,这个函数名称不加括号,不指定参数。也可以用Javascript即时定义函数的方式定义响应函数。比如:

http_request.onreadystatechange = function() { };

C、发出HTTP请求

  指定响应处理函数之后,就可以向服务器发出HTTP请求了。这一步调用XMLHttpRequest对象的opensend方法。

http_request.open('GET', 'http://www.example.org/some.file', true);

http_request.send(null);

  open的第一个参数是HTTP请求的方法,为GetPost或者Head

  open的第二个参数是目标URL。基于安全考虑,这个URL只能是同网域的,否则会提示没有权限的错误。这个URL可以是任何的URL,包括需要服务器解释执行的页面,不仅仅是静态页面。目标URL处理请求XMLHttpRequest请求则跟处理普通的HTTP请求一样,比如JSP可以用request.getParameter(“”)或者request.getAttribute(“”)来取得URL参数值。


1 2 3 4 5 6 7 下一页>>

责任编辑:lss
  相关新闻
Web2.0时代的核心应用:Ajax简介
编辑推荐:Ajax技术概述与现状应用
精华:AJAX开发简略(第一部分)
Java升级篇:ANT十五大最佳实践详解
通用SQL数据库查询语句精华使用
技术新知:AJAX基础教程
科学技术部部长徐冠华:核心技术是引进不来的
什么是AOP系列之二:AOP与权限控制实现
什么是AOP系列之一:AOP概念解析
应用服务器:Apache服务器配置全攻略
Web2.0时代的核心应用:Ajax简介
精华:AJAX开发简略(第一部分)
编辑推荐:Ajax技术概述与现状应用
通用SQL数据库查询语句精华使用
技术新知:AJAX基础教程
什么是AOP系列之二:AOP与权限控制实现
什么是AOP系列之一:AOP概念解析
科学技术部部长徐冠华:核心技术是引进不来的
应用服务器:Apache服务器配置全攻略
Java升级篇:ANT十五大最佳实践详解
  评论
现在有100人对本文发表评论
查看所有评论
 
推  荐
 
100本成功必读热销书
热门招生
  北京文理研修学院   前进大学
  北京明园大学   北京建设大学
  北京邮电大学世纪学院   北方工商管理学院
  联想软件定向委培班   香港数码动画学院
  青年企业管理研修学院   北京华夏管理学院
热门培训
网络化办公专家培训认证 电子科技大学软件学院
软件测试工程师培训认证 北大青鸟十大授权培训
IT硬件工程师培训认证班 北京环球雅思荷兰预科
JAVA开发工程师培训 潜能时代IT服务管理培训
网络信息化工程师培训 清华大学继续教育学院
论坛精选
 
有些细节是男人也该注意的风度!最容易读错的字
某强人手机里保存的30条短信 中国十大高薪职业
最感人的十大韩剧经典台词 嫁给工程师的N个理由
爆强!只有一句话的鬼故事 转贴教你如何做妖精
 女人一定要記住的話 女人最好别嫁给最爱的男人
城市联盟
 大连 上海 天津 广州 西安 深圳  天津  青岛  大连  福州  沈阳  青海  连云港  南京  吉林  厦门  威海  辽宁  呼和浩特
Copyright © 2006   www.edu999.com   All rights reserved. 中国教育招生在线  版权所有
北京市通信管理局[2004]字第552号函    京ICP证040442号