首页 | 互联网 | IT动态 | IT培训 | Cisco | Windows | Linux | Java | .Net | Oracle | 软件测试 | C/C++ | 嵌入式开发 | 存储世界 | 服务器
网络设备 | IDC | 安全 | 求职招聘 | 数字网校 | 网页设计 | 平面设计 | 技术专题 | 电子书下载 | 教学视频 | 源码下载 | 搜索 | 博客 | 论坛
ASP | ASP.NET | JSP | PHP | AJAX | XML | Java script | HTML/CSS | 服务器类
各大城市软件开发培训、软件人才免费咨询热线:400-700-5807
 您现在的位置: 中国IT实验室 >> WEB开发 >> AJAX学习教程 >> 正文
利用AJAX+J2EE开发组织机构管理系统
ChinaItLab  2006-2-27  保存本文  佚名  收藏本站

  三、 前端页面的主要编码

  1. 树的实现

  在WEB上实现树结构,同样我们是通过Ajax来实现的。树上可以显示自定义的图标,可以插入、删除、结点。并且结点可任意移动。这里我们不重点讲树的实现技术,我们已经封装好了,你只要按要求去改动就是了。

  1) 键接树型文件

在<head>与</head>之间键接我们的与树有关的文件, 代码如下:

<link rel="STYLESHEET" type="text/css" href="css/dhtmlXTree.css">
<script src="js/dhtmlXCommon.js"></script>
<script src="js/dhtmlXTree.js"></script>

   2) 装载方法

  在页面的文档打开时装载自定义方法, preLoadImages方法实现树控件的图标定义,doOnLoad实现树控件的图标定义代码如下:

<body onload="preLoadImages();doOnLoad();">

  3) 编写方法

//doOnLoad实现装载并显示树。设置树属性等。
function doOnLoad(){
 OrgTree=new dhtmlXTreeObject(document.getElementById('divTree'),"100%","100%",0);
 //dhtmlXTreeObject是树对象,通过新建对象,指定树显示的DIV可定义树。
 OrgTree.setImagePath("imgs/");//设置树的图片所在位置
 OrgTree.setDragHandler();//设置树结点拖动
 OrgTree.enableDragAndDrop(true) //设置树结点是否可拖动
 OrgTree.setDragHandler(myDragHandler); //设置树结点拖动时所执行的方法
 OrgTree.setOnClickHandler(mySelectHandler); //设置树单击时所执行的方法

 //OrgTree.setXMLAutoLoading("Org.jsp");//装载树结点数据。数据来源如Org.jsp所返回的XML格式的字符串,数据是动态装载,且当展开时才装载。

 OrgTree.loadXML("root.xml?0");//装载树结点数据。数据来源root.xml文件,并且从xml文件的ID号为0处读取数据。

 //OrgTree.loadXML("Org.jsp");//装载树结点数据。数据来源如Org.jsp所返回的XML格式的字符串,并且是一次性全部装载数据。
}
//preLoadImages方法实现树控件的图标定义
function preLoadImages(){
 var imSrcAr = new Array("line1.gif","line2.gif","line3.gif","line4.gif","minus2.gif","minus3.gif",
  "minus4.gif","plus2.gif","plus3.gif","plus4.gif","book.gif","books_open.gif","books_close.gif",
  "magazine_open.gif","magazine_close.gif","tombs.gif","tombs_mag.gif","book_titel.gif")
 var imAr = new Array(0);
 for(var i=0;i<imSrcAr.length;i++){
  imAr[imAr.length] = new Image();
  imAr[imAr.length-1].src = "imgs/"+imSrcAr[i]
 }
}

  2. 组织管理的实现

  组织可以增加、删除、编辑。同时当选择树结点时应该把组织显示出来供编辑,查看。为了实现这些功能,你只要按要求去改动就是了。

  1) 全局变量的定义

  许多地方我们要用到一些公共变量,我们在<script>与</script>之间定义全局变量, 代码如下:

var OrgTree = null; //组织树Dom
var nextSeq = 0;//人员管理的顺序号(流水号)
var personDom;//人员Dom
var CurrNodeId;//当前结点Id

   2) 初始化

  当页面打开时我们要控件好那部分该显示,那部分要隐藏。且对全局变量的赋值等,组织类型装载。在页面的文档打开时装载自定义方法init(), init方法实现初始化。

<body onload="init();">

  init方法实现如下:

function init(){
 //定义personDom为一个XMLDOM'对象
 personDom= new ActiveXObject('Microsoft.XMLDOM');
 personDom.async = false;
 //定义stylesheet为一个XMLDOM'对象,且stylesheet为personDom确定显示风格
 stylesheet = new ActiveXObject('Microsoft.XMLDOM');
 stylesheet.async = false;
 stylesheet.load("addOrgPerson.xsl"); //装载stylesheet的风格定义文件

 //装载组织类型数据
 var xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
 xmlhttp.open("POST","Org.jsp?mode=GetOrgType", false);
 xmlhttp.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
 xmlhttp.send();
 retXml=xmlhttp.responseText;
 // alert(retXml);
 //把组织类型插入下拉列表控件中
 var OrgDoc = new ActiveXObject('Microsoft.XMLDOM');
 OrgDoc.async = false;
 OrgDoc.loadXML(retXml);
 var root = OrgDoc.documentElement;
 oNodeList = root.childNodes;
 txtType.options.length =oNodeList.length;
 for (var i=0; i<oNodeList.length; i++)
 {
  Item = oNodeList.item(i);
  var OrgTypeId=Item.childNodes(0).text;
  var OrgTypeName=Item.childNodes(1).text;
  txtType.options[i].value=OrgTypeId;
  txtType.options[i].text=OrgTypeName;
  // txtType.options[0].
 }
}

上一页  [1] [2] [3] [4] [5] [6] [7] 下一页

中国IT教育热线咨询
相关文章
没有相关文章
最新文章
·PHP正则表达式从url中取得域名
·php设计模式介绍之迭代器模式
·简单学习php遇到的主要问题
·asp根据表单自动生成sql语句的函
·雅虎选项卡特效
 文章评论

 精彩友情推荐
·Asp源码 PHP源码
·CGI源码 JSP源码
·建站书籍教程
·服务器软件 .net源码
·建站工具软件
·IDC资讯大全
·机房品质万里行
·IDC托管必备知识
·全国IDC报价
·网站推广优化
ASP.NET ASP PHP JSP
·extjs ComboBox联动下拉菜单示例08-01
·漫谈.Net开发关于命名空间和目录划分07-31
·在Silverlight应用程序中操作Cookie07-28
·带附加条件的NewID()用法(downmoon)07-28
·对自定义路由进行单元测试07-28
·javascript实现yield07-28
·在ASP.NET中使用Google Maps07-28
·Sql Server2005 实现Oracle10g的hash表分区功07-28
·asp.net get set用法07-26
·Asp.net 控件开发—数据回传07-26
·接口vs. 的实体类07-26
·php设计模式介绍之迭代器模式08-02
·简单学习php遇到的主要问题08-02
·asp根据表单自动生成sql语句的函数08-02
·教你优化你的ASP程序03-07
·asp去除HTML标记的三个实用函数03-07
·ASP添加验证码的解决方法03-07
·ASP通用文章分页函数:非记录集分页03-07
·ASP教程基础:十天学会ASP第三天03-07
·ASP教程基础:十天学会ASP第二天03-07
·ASP教程基础:十天学会ASP第一天03-07
·能够生成google xml地图的asp源码03-06
·Linux系统下让PHP提高性能的工具APC05-06
·一个完整、安全的PHP用户登录系统11-14
·Apache+PHP+MySQL建立数据库驱动的动态网站08-24
·用SSH与PHP相连接 确保数据传输的安全性08-23
·PHP5手动最简安装方法08-03
·PHP程序加速探索之服务器负载测试07-11
·完全讲解PHP+MySQL的分页显示示例分析05-30
·用Suhosin加强PHP脚本语言安全性05-26
·初学入门 PHP 和 MySQL05-17
·传奇的诞生 PHP三位创始人简介05-10
·大型系统上PHP令人不爽的九大原因05-10
·ASP.NET和PHP、JSP究竟学哪个?07-30
·JAVA (Jsp)利用Google的Translate开发API07-29
·由Servlet获得FacesContext及ManagedBeans07-24
·用JOTM向Servlet中添加事务07-18
·用servlet生成验证码07-16
·JSP/Servlet伪静态网页实现07-08
·JSP和Servlet的关系浅谈06-15
·妙用异步Servlet扩展AJAX应用程序06-11
·servlet生成验证码图片06-02
·java.servlet.Filter的应用05-30
·Java程序员必看--扩展鼠标右键菜单功能05-13
  培训中心
人才交流中心 技术交流中心
  ITLab技术交流平台: