e3.tree 1.5 发布,很好,很强大,有截图
E3.Tree 特色:
1:部署简单,只需要把相关jar放到WEB-INF/lib目录下即可
2:构造树,菜单等树型UI的开发模式一致
3:提供了API和taglib 2种使用方式,使用简单,功能强大
4:能够很容易把现有的树型UI集成进来,现在支持的有:xtree, ext tree 和yui menu
5:功能丰富,现在支持的树有 普通树,radio树 ,checkbox树,动态树等
6:能够在jsf/webwork/strtus/spring mvc 等等框架使用
代码示例:
<c:url var="orgIcon" value="/e3/samples/tree/Org.gif"/>
<c:url var="userIcon" value="/e3/samples/tree/User.gif"/>
<e3:tree var="org" items="orgs" >
<e3:node id="${org.id}" parentId="${org.parentId}" name="${org.name}"
icon="${orgIcon}"
openIcon="${userIcon}"
/>
</e3:tree>
想了解更多内容,请登陆e3主页 http://ie3.googlecode.com/ 下载
E3Tree参考手册[1.5]
E3.Tree.dist-1.5.jar
E3.Tree.src-1.5.jar
e31.2.2.jar (这是样例)
评论
加载很快的
在MzTreeView主页没找到MzTreeView2.0,知道哪可以下载吗?
这种情况经常有
我明白你的意思, 本人js不熟悉,e3.tree 本身没有提供js树,是集成了xtree和ext tree, 好象这2个东西不支持你要的功能.谁有能满足这类需求的树,愿意提供的话,我把它集成到e3.tree里来,简化应用
这种情况经常有
不过Ext也不错!
把下面内容命名为E3Tree.jsp,放到例子web应用目录下去,输入地址http://localhost:8080/e3/E3Tree.jsp 看看效果,如果你看到2棵树,说明程序正常没问题.
<%@ page contentType="text/html; charset=utf-8"%> <%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %><%@ taglib prefix="e3" uri="/e3/tree/E3Tree.tld" %><!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"><HTML><HEAD><META http-equiv=Content-Type content="text/html; charset=utf-8"><script> function showSelectedNode(){ var selectModel= tree.getSelectionModel(); var selectNode = selectModel.getSelectedNode(); alert(selectNode.text + selectNode.id ); } </script></HEAD><BODY> <% java.util.List datas = new java.util.ArrayList(); java.util.Map data = new java.util.HashMap(); data.put("id","10"); data.put("parentId", null ); data.put("name","总部"); datas.add( data ); java.util.Map data1 = new java.util.HashMap(); data1.put("id","1010"); data1.put("parentId", "10" ); data1.put("name","子公司1"); datas.add( data1 ); java.util.Map data2 = new java.util.HashMap(); data2.put("id","1020"); data2.put("parentId", "10" ); data2.put("name","子公司2"); datas.add( data2 ); pageContext.setAttribute("orgs", datas); %><table><tr><td><c:url var="orgIcon" value="/e3/samples/tree/Org.gif"/><c:url var="userIcon" value="/e3/samples/tree/User.gif"/><e3:tree var="org" items="orgs" builder="extTree"> <e3:node id="${org.id}" parentId="${org.parentId}" name="${org.name}" icon="${orgIcon}" openIcon="${userIcon}" action="javascript:showSelectedNode()" /></e3:tree></td><td><e3:tree var="org" items="orgs" builder="xTree"> <e3:node id="B${org.id}" parentId="B${org.parentId}" name="${org.name}" icon="${orgIcon}" openIcon="${userIcon}" action="javascript:alert('test')" /></e3:tree></td></tr></BODY></HTML> |
1. 声明taglib
<%@ taglib prefix="e3" uri="/e3/tree/E3Tree.tld" %>2. 准备业务数据
java.util.List datas = new java.util.ArrayList(); java.util.Map data = new java.util.HashMap(); data.put("id","10"); data.put("parentId", null ); data.put("name","总部"); datas.add( data ); java.util.Map data2 = new java.util.HashMap(); data2.put("id","1020"); data2.put("parentId", "10" ); data2.put("name","子公司2"); datas.add( data2 ); 业务数据可以保存在Map或者普通的JAVABEAN中.业务数据必须包含id,parentId,以及节点名称 信息。注意:并不要求他们的属性名是”id” “parented”,”name”,只需要包含了这些信息即可。Id代表节点主键,parentId代表父亲节点主键, name代表节点标题。 如你的业务对象属性名称是orgId, parentOrgId, orgName都可以.3. 保存业务数据
pageContext.setAttribute("orgs", datas); 可以保存到(pageContext,request, session或application里)4. 使用taglib显示树
<e3:tree var="org" items="orgs" builder="extTree"> <e3:node id="${org.id}" parentId="${org.parentId}" name="${org.name}" icon="${orgIcon}" openIcon="${userIcon}" action="javascript:showSelectedNode()" /></e3:tree>Tree标签属性属性名称 | 属性类型 | 备注 |
var | String | 用于保存items元素 |
items | String | 是业务数据列表对象的key |
builder | String | 用于构造树的builder对象(builder是什么下面会有介绍),可以选值有 [XTree, XLoadTree, RadioXTree, RadioXLoadTree, CheckXTree, CheckXLoadTree, CompositeXTree, CompositeXLoadTree, ExtTree, ExtLoadTree] 如果这些builder不能满足您的需求,你可以指定一个class,只要指定class实现了WebTreeBuilder接口即可. |
comparator | java.util.Comparator | 排序器,用来对树的节点排序. 节点类型为 net.jcreate.e3.tree.support.WebTreeNode |
sortProperty | String | 排序属性名称,默认是按节点的名称来排序的,如果要使用别的属性排序,则需要设置该值.:如果你的业务对象有排序属性时,则需要指定,如sortProperty=”orgOrder”. 注意:如果设置了comparator属性,那么该值无效. |
reverse | boolean | 是否反向排序,默认false |
q node标签负责将业务对象转换成树节点对象.node taglib包含的常规属性有
属性名称 | 属性类型 | 备注 |
id | String | 节点id |
parentId | String | 父亲节点id |
name | String | 节点名称(标题) |
icon | String | 节点图标 |
openIcon | String | 节点展开时的图标 |
action | String | 是单节点时的动作,可以是一个url也可以是javascript函数.如果是函数,则必须以javascript:开头.如:action=”javascript: alert(‘demo’)” |
nodeProperty | String | 用于设置节点类型,有效值radio,checkbox和none, nodeProperty的默认值是none,表示节点旁边没有其他控件,为radio时,节点旁边会有个单选按纽,为checkbox时,节点旁边会有个checkbox按纽. |
selected | boolean | 是否选种节点,只有当nodeProperty为radio或checkbox时才有效,默认值为false |
disabled | boolean | 是否禁用节点,默认值为false |
value | String | 节点帮定的值,只有当nodeProperty为radio或checkbox时才有效,默认值为空(长度为0的字符串) |
dragable | boolean | 节点是否允许拖动,默认值为false |
dropable | boolean | 是否允许停放拖动的节点,默认值为false |
发表评论
提醒: 该博客已发表在公共论坛,博客所有留言会成为论坛回贴,留言请注意遵守论坛发贴规则
- 浏览: 12790 次

- 详细资料
搜索本博客
我的相册
共 10 张
最新评论
-
e3.tree 1.5 发布,很好, ...
确实不错,今天刚适了一下,还可以,主要是页面比较简捷了!
-- by Run -
e3.tree 1.5 发布,很好, ...
黄老大这个集成好呀,最近项目中要用到动态树,e3封装的ext tree很适合呀, ...
-- by flyfan -
e3.tree 1.5 发布,很好, ...
节点在1W以上的用MzTreeView2.0是很好的方案。 加载很快的
-- by cqx2004 -
e3.tree 1.5 发布,很好, ...
用EXT TREE 500个节点 轻轻松松
-- by java_2006 -
e3.tree 1.5 发布,很好, ...
pacer123 写道当使用的是单选按钮的方式时,如何使一级节点前也有选择,方便 ...
-- by huangyh






评论排行榜