欢迎来到论文网! 识人者智,自知者明,通过生日认识自己! 生日公历:
网站地图 | Tags标签 | RSS
论文网 论文网8200余万篇毕业论文、各种论文格式和论文范文以及9千多种期刊杂志的论文征稿及论文投稿信息,是论文写作、论文投稿和论文发表的论文参考网站,也是科研人员论文检测和发表论文的理想平台。lunwenf@yeah.net。
您当前的位置:首页 > 科技论文 > 计算机论文

基于ajax的IETM动态目录树的设计与实现

时间:2011-04-24  作者:秩名

论文导读:动态目录树。本文提出了一种新的解决思路:采用ajax技术构建动态的目录树。2IETM系统中目录树结构的构建2.1目录文档的结构在IETM应用系统中。
关键词:IETM,ajax,动态目录树
 

树形目录是IETM应用系统中常用的直接访问方式,用户通过清晰的、可折叠的树形目录可以快速定位到目标卡片或章节。这样做有两个优势:一是直观,通过树节点的展开、折叠可以很直观地了解到数据之间的层次关系。二是方便,通过点击树的节点就可以显示所需要的信息,而无需查询操作。常见的目录树有两种类型:

一是静态目录树。在应用程序开始时一次性加载所有数据。优点:纯客户端控制,页面无需刷新。缺点:(1)一架飞机的技术手册数量繁多,所构成目录树中的条目最少也有上千条。庞大的数据量使页面显示速度迟缓,令人难以忍受。而当目录树中的条目多到一定程度时,大数据量会让客户端超时以至于读取失败,严重时甚至会使IE当掉。(2)对于某个终端用户来说,经常使用的只是特定的某几类技术资料,目录中的绝大部分信息是不需要的。

二是动态目录树。每次只加载一级目录。只有用户展开节点时,才加载下一级节点数据。优点:数据量小,响应速度快。缺点:页面频繁刷新,用户体验差,而且刷新后会使其它数据丢失。

本文提出了一种新的解决思路:采用ajax技术构建动态的目录树。免费论文参考网。这种方法综合了前两种方法的优点,一方面数据动态加载,一次只加载一级目录,只有用户点击后才显示下一级分类目录。不仅大大减少了数据的冗余,提高了页面加载速度,而且使得每个用户都能根据实际需要构建出满足自身要求的目录树,灵活性强。另一方面采用ajax技术实现与后台服务器之间的数据交换,使得页面无需全部刷新。

1Ajax技术简介Ajax的全称是Asynchronous JavaScript andXML,2005年2月由Adaptive Path公司提出,之后,在Google地图中得到了成功的应用,发展迅速。实际上,Ajax并不是一种新技术,而是几种技术的组合,包括:

·基于XHTML和CSS标准的表示;

·使用DocumentObject Model进行动态显示和交互;

·使用XMLHttpRequest与服务器进行异步通信;

·使用JavaScript绑定一切。

归纳起来说,它有两大特点:

一是异步读取数据。Ajax技术的核心是XMLHttpRequest对象,它提供了客户端与服务器端异步通信的能力,直接通过浏览器与后端服务器进行通信,在服务器端进行数据的处理(如更新或查询数据库)。

二是页面无需全部刷新。从后台服务器返回的数据,通过JavaScript和CSS来更新页面中相应的区域。可以看出,ajax使Web应用程序无需从服务器重新载入页面来实现页面数据的更改,从而避免了传统web应用程序在提交请求后出现的“白屏”现象。

2IETM系统中目录树结构的构建2.1目录文档的结构在IETM应用系统中,技术资料以数据模块的形式存储在数据库中,每个数据模块对应一个xml文档。出版物模块则用来表示各个数据模块所属的类别和层次关系,相当于技术资料的总目录。免费论文参考网。按照S1000D标准,出版物模块的数据架构与相应的XML文档见图1。

 

 
 

图1 某型飞机出版物模块的数据架构图及相应的XML文档

可以看出,出版物模块中的核心信息有两类:一类是数据模块的分类信息,这一信息是通过元素pmentry之间的嵌套关系体现出来的;另一类是数据模块的内容信息,元素refdm中包含该数据模块的唯一编码。元素title根据位置的不同,代表不同的含义。如果title的下一个元素为pmentry,表示所属类别的名称;如果title的下一个元素为dmentry,表示数据模块的名称。

2.2目录树的结构

 
 

在IETM阅读系统中,目录树用于对所有技术资料进行组织、管理和导航。它描述了技术数据的总体结构框架,为用户展示了清晰的、层次分明的数据结构组织形式。目录树的结构如图2所示,基本组成单元是节点。IETM系统目录树中节点的类型又可以分成两种:父节点和叶子节点。叶子节点表示IETM系统技术资料对应的数据模块,父节点表示数据模块的所属类别。

图2 目录树结构图

2.3目录文档与目录树之间的映射

 
 

出版物文档中的元素pmentry、dmentry分别对应树中的父节点和叶子节点。为了使目录文档与树之间的对应关系更加清晰,便于使用xsl文件进行转换,需要对其它信息进行归类,并转换为所属元素的对应属性,使目录文档中只包含pmentry和dmentry两类元素。图3是转换后的xml文档,可以看出它的层次信息十分清晰,与树结构一一对应。

图3 转换后的XML文档及其对应的目录树

3基于ajax的动态目录树的实现3.1业务逻辑Ajax动态目录树的业务逻辑图4所示。

(1) 前台浏览器端捕捉用户的操作事件。如果要展开节点,则通过xmlHTTP异步调用服务器端,并将所要展开节点的路径作为参数传递到服务器端。

(2) 后台服务器端根据客户端传送的节点参数,求取所有子节点的参数,包括显示的文字、有无下级节点。如果是叶子节点,那么还要计算该节点所链接数据模块的URL地址。

(3) 将获取的数据通过response写回去。

(4)

 
 

客户端接受服务器端的数据,将子节点的参数添加到所展开节点下面。免费论文参考网。

图4 业务逻辑示意图

3.2关键设计3.2.1 客户端创建xmlHttp对象客户端通过xmlHttp对象调用服务器,传送待展开节点的路径,并发出HTTP请求,代码如下:

if(typeofXMLHttpRequest!='undefined') //如果是IE浏览器,创建XMLHttpRequest对象

{ xmlhttp=new XMLHttpRequest(); }

elseif(typeof ActiveXObject != 'undefined') //否则创建XMLHTTP ActiveX对象。

{ xmlhttp=new ActiveXObject('Microsoft.XMLHTTP'); }

elsereturn null;

xmlhttp.open('post','pm.aspx',true);//调用服务器

xmlhttp.onreadystatechange=function(){

if(req.readyState==4){

 

查看相关论文专题
加入收藏  打印本文
上一篇论文:广播教学软件的屏幕传输设计
下一篇论文:基于ARM嵌入式系统的AES加密算法实现(图文)
科技论文分类
科技小论文 数学建模论文
数学论文 节能减排论文
数学小论文 低碳生活论文
物理论文 建筑工程论文
网站设计论文 农业论文
图书情报 环境保护论文
计算机论文 化学论文
机电一体化论文 生物论文
网络安全论文 机械论文
水利论文 地质论文
交通论文
相关计算机论文
最新计算机论文
读者推荐的计算机论文