zTREE使用

<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>

<%@include file="/common/taglibs.jsp" %>

<%@taglib prefix="page" uri="/WEB-INF/pageTag.tld" %>

<!DOCTYPE html>

<html>

<head>

<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">

<title>Border Layout - jQuery EasyUI Demo</title>

<link rel="stylesheet" type="text/css" href="./js/jquery-easyui-1.2.5/themes/gray/easyui.css">

<link rel="stylesheet" type="text/css" href="./js/jquery-easyui-1.2.5/themes/icon.css">

<script type="text/javascript" src="./js/jquery-easyui-1.2.5/jquery-1.7.1.min.js"></script>

<script type="text/javascript" src="./js/jquery-easyui-1.2.5/jquery.easyui.min.js"></script>

<script type="text/javascript" src="./js/jquery-easyui-1.2.5/easycommon.js"></script>

<link rel="stylesheet" href="${ctx}/js/JQuery zTree v3.0/css/zTreeStyle/zTreeStyle.css" type="text/css">

<script type="text/javascript" src="${ctx}/js/JQuery zTree v3.0/js/jquery.ztree.core-3.0.js"></script>

<script type="text/javascript" src="${ctx}/js/JQuery zTree v3.0/js/jquery.ztree.excheck-3.0.js"></script>

<script type="text/javascript" src="${ctx}/js/JQuery zTree v3.0/js/jquery.ztree.exedit-3.0.js"></script>

<style type="text/css">

/* ztree样式重写 */

.ztree li button.noline_open{

background: url('./js/jquery-easyui-1.2.5/themes/gray/images/tree_arrows.gif') no-repeat -18px 0px;

}

.ztree li button.noline_close {

background: url('./js/jquery-easyui-1.2.5/themes/gray/images/tree_arrows.gif') no-repeat 0px 0px;

}

.ztree li button.pIcon02_ico_open,.ztree li button.pIcon02_ico_close{

margin-right:2px; background: url('${ctx}/js/JQuery zTree v3.0/css/zTreeStyle/img/diy/2.png') no-repeat scroll 0 0 transparent;

vertical-align:top; 

*vertical-align:middle;

}

</style>

<script type="text/javascript">

$(function(){

bindTabEvent();  

   bindTabMenuEvent();  

$('#tt2').datagrid({

title:'My Title',

iconCls:'icon-save',

width:600,

height:350,

nowrap: false,

striped: true,

fit: true,

url:'datagrid_data.json',

sortName: 'code',

sortOrder: 'desc',

idField:'code',

frozenColumns:[[

               {field:'ck',checkbox:true},

               {title:'code',field:'code',width:80,sortable:true}

]],

columns:[[

       {title:'Base Information',colspan:3},

{field:'opt',title:'Operation',width:100,align:'center', rowspan:2,

formatter:function(value,rec){

return '<span style="color:red">Edit Delete</span>';

}

}

],[

{field:'name',title:'Name',width:120},

{field:'addr',title:'Address',width:120,rowspan:2,sortable:true},

{field:'col4',title:'Col41',width:150,rowspan:2}

]],

pagination:true,

rownumbers:true

});

$('#tt1').tree({

checkbox: false,

url: './data/tree_data.json',

onClick:function(node){

$(this).tree('toggle', node.target);

//alert('you click '+node.text);

},

onContextMenu: function(e, node){

e.preventDefault();

$('#tt2').tree('select', node.target);

$('#mm').menu('show', {

left: e.pageX,

top: e.pageY

});

}

});

//zTree 开始 --------

var setting = {

data: {

simpleData: {

enable: true

}

},

async: {

enable: true,

url:"${ctx}/system/toGetZtreeData.action"

},

view: {

showLine: false

},

callback: {

/* beforeClick: beforeClick,

beforeCollapse: beforeCollapse,

beforeExpand: beforeExpand,

onCollapse: onCollapse,

onExpand: onExpand */

}

};

var zNodes =[

{ id:1, pId:0, name:"zTree Home",iconOpen:"/img/open.gif"},

{ id:2, pId:1, name:"zTree in Google"},

{ id:3, pId:2, name:"zTree in Iteye"},

{ id:12, pId:11, name:"zTree in Google"},

{ id:13, pId:12, name:"zTree in Iteye"},

{ id:4, pId:2, name:"Nothing..."}

];

$.fn.zTree.init($("#treeDemo"), setting);

});

//zTree回调函数

function zTreeOnClick(event, treeId, treeNode) {

//alert("${ctx}/"+treeNode.tabUrl);

   //alert(treeNode.tId + ", " + treeNode.name+", " + treeNode.url);

   if(treeNode.tabUrl && treeNode.tabUrl != null){

       addTab(treeNode.name,"${ctx}/"+treeNode.tabUrl);

   }

}

</script>

</head>

<body class="easyui-layout">

<div region="north" title="North Title" split="true" style="height:100px;">

<div>

<input type="button" οnclick="addTabs();" name="addNavTabs" value="添加面板"/>

<input type="button" οnclick="addTab('用户管理','datagrid.jsp');" name="addNavTabs" value="获取面板"/>

<input type="button" οnclick="addTab1('用户12管理','datagrid.jsp');" name="addNavTabs" value="获取面板"/>

<a href="${ctx}/system/login.action">系统主页面</a>

<p>The north content.</p>

</div>

</div>

<div region="south" title="South Title" split="true" style="height:100px;padding:10px;background:#efefef;">

<div class="easyui-layout" fit="true" style="background:#ccc;">

<div region="center">sub center</div>

<div region="east" split="true" style="width:200px;">sub center</div>

</div>

</div>

<div region="west" split="true" title="菜单列表" style="width:280px;padding1:1px;overflow:hidden;">

<div class="easyui-accordion" fit="true" border="false">

<div title="系统管理" style="padding:10px;">

<ul id="tt1" class="easyui-tree" animate="true" dnd="true">

<li>

<span>Folder</span>

<ul>

<li state="closed">

<span>Sub Folder 1</span>

<ul>

<li>

<span><a href="#">File 11</a></span>

</li>

<li>

<span>File 12</span>

</li>

<li>

<span>File 13</span>

</li>

</ul>

</li>

<li>

<span>File 2</span>

</li>

<li>

<span>File 3</span>

</li>

<li>File 4</li>

<li>File 5</li>

</ul>

</li>

<li>

<span>File21</span>

</li>

</ul>

</div>

<div title="产品管理" style="padding:10px" selected="true">

<ul id="treeDemo" class="ztree"></ul>

</div>

</div>

</div>

<div region="center" title="Main Title" style="overflow:hidden;">

<div id="mm" class="easyui-menu" style="width:150px;">  

<div id="m-refresh">刷新</div>

       <div id="mm-tabclose">关闭</div>  

       <div class="menu-sep"></div>

       <div id="mm-tabcloseall">关闭全部</div>  

       <div id="mm-tabcloseother">关闭其他</div>  

       <div class="menu-sep"></div>  

       <div id="mm-tabcloseright">关闭右侧标签</div>  

       <div id="mm-tabcloseleft">关闭左侧标签</div>  

   </div>  

<div id="navTabs" class="easyui-tabs" fit="true" border="false">

<div title="我的主页" style="padding:20px;overflow:hidden;"> 

<div style="margin-top:20px;">

<h3>jQuery EasyUI framework help you build your web page easily.</h3>

<li>easyui is a collection of user-interface plugin based on jQuery.</li> 

<li>using easyui you don't write many javascript code, instead you defines user-interface by writing some HTML markup.</li> 

<li>easyui is very easy but powerful.</li> 

<%-- <page:pageInfo pageSize="1" url="index.jsp" totalPage="20" curPage="2"></page:pageInfo> --%>

</div>

</div>

</div>

</div>

</body>

</html>

 

package com.grace.project.test.pojo;

 

public class SimpleTree {

 

private Long id;

private Long pId;

private String name;

private boolean open;

private String iconSkin;

private boolean isParent = false;

public SimpleTree(){}

public SimpleTree(Long id, Long pId, String name, boolean open) {

super();

this.id = id;

this.pId = pId;

this.name = name;

this.open = open;

}

 

public Long getId() {

return id;

}

public void setId(Long id) {

this.id = id;

}

public Long getpId() {

return pId;

}

public void setpId(Long pId) {

this.pId = pId;

}

public String getName() {

return name;

}

public void setName(String name) {

this.name = name;

}

public boolean isOpen() {

return open;

}

public void setOpen(boolean open) {

this.open = open;

}

 

public String getIconSkin() {

return iconSkin;

}

 

public void setIconSkin(String iconSkin) {

this.iconSkin = iconSkin;

}

 

public boolean getIsParent() {

return isParent;

}

 

public void setIsParent(boolean isParent) {

this.isParent = isParent;

}

}


package com.grace.project.test.action;

import java.util.ArrayList;
import java.util.List;

import com.grace.project.test.model.AcctPrivilege;
import com.grace.project.test.pojo.SimpleTree;
import com.opensymphony.xwork2.ActionSupport;

@SuppressWarnings("serial")
public class PrivilegeAction extends ActionSupport{

private List<AcctPrivilege> privileges;

    public List<SimpleTree> getLstTree() {
return lstTree;
}
public void setLstTree(List<SimpleTree> lstTree) {
this.lstTree = lstTree;
}

List<SimpleTree> lstTree;
@Override
public String execute() throws Exception {
return SUCCESS;
}
/**
* 获取树形数据
* @return String
* @throws Exception
*/
public String toGetPrivilege() throws Exception {
AcctPrivilege privilege1 = new AcctPrivilege();
privilege1.setId(1L);
privilege1.setParentId(0L);
privilege1.setName("name 1");
AcctPrivilege privilege2 = new AcctPrivilege();
privilege2.setId(2L);
privilege2.setParentId(1L);
privilege2.setName("name 2");
AcctPrivilege privilege3 = new AcctPrivilege();
privilege3.setId(3L);
privilege3.setParentId(1L);
privilege3.setName("name 3");
privilege3.setUrl("datagrid.jsp");
AcctPrivilege privilege4 = new AcctPrivilege();
privilege4.setId(4L);
privilege4.setParentId(2L);
privilege4.setName("name 4");
privilege4.setUrl("datagrid.jsp");
List<AcctPrivilege> privilegleTree = new ArrayList<AcctPrivilege>();
privilegleTree.add(privilege1);
privilegleTree.add(privilege2);
privilegleTree.add(privilege3);
privilegleTree.add(privilege4);
this.setPrivileges(privilegleTree);
        
        setLstTree(lstTree);
return SUCCESS;
}

public String toGetZtreeData() throws Exception {
AcctPrivilege privilege1 = new AcctPrivilege();
privilege1.setId(1L);
privilege1.setParentId(0L);
privilege1.setName("name 1");
AcctPrivilege privilege2 = new AcctPrivilege();
privilege2.setId(2L);
privilege2.setParentId(1L);
privilege2.setName("name 2");
AcctPrivilege privilege3 = new AcctPrivilege();
privilege3.setId(3L);
privilege3.setParentId(1L);
privilege3.setName("name 3");
privilege3.setUrl("datagrid.jsp");
AcctPrivilege privilege4 = new AcctPrivilege();
privilege4.setId(4L);
privilege4.setParentId(2L);
privilege4.setName("name 4");
privilege4.setUrl("datagrid.jsp");
List<AcctPrivilege> privilegleTree = new ArrayList<AcctPrivilege>();
privilegleTree.add(privilege1);
privilegleTree.add(privilege2);
privilegleTree.add(privilege3);
privilegleTree.add(privilege4);
this.setPrivileges(privilegleTree);
        SimpleTree nodes1 = new SimpleTree(1L,0L,"test1",true);
        SimpleTree nodes2 = new SimpleTree(2L,1L,"test2",true);
        SimpleTree nodes3 = new SimpleTree(3L,1L,"test3",true);
        SimpleTree nodes4 = new SimpleTree(4L,2L,"test4",false);
        SimpleTree nodes5 = new SimpleTree(5L,0L,"test5",true);
        SimpleTree nodes6 = new SimpleTree(6L,3L,"test6",false);
        SimpleTree nodes7 = new SimpleTree(7L,6L,"test7",false);
        SimpleTree nodes8 = new SimpleTree(8L,null,"test8",false);
        nodes8.setIsParent(true);
        
        nodes1.setIconSkin("pIcon02");
        lstTree = new ArrayList<SimpleTree>();  
        lstTree.add(nodes3);  
        lstTree.add(nodes4);  
        lstTree.add(nodes5);  
        lstTree.add(nodes6);
        lstTree.add(nodes7);
        lstTree.add(nodes1);  
        lstTree.add(nodes2); 
        lstTree.add(nodes8);  
       
        setLstTree(lstTree);
return SUCCESS;
}
public List<AcctPrivilege> getPrivileges() {
return privileges;
}

public void setPrivileges(List<AcctPrivilege> privileges) {
this.privileges = privileges;
}
}


 <action name="toGetZtreeData" class="com.grace.project.test.action.PrivilegeAction" method="toGetZtreeData">
            <result type="json">
<param name="root">lstTree</param>
            </result>
        </action>
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值