當前位置:首頁 » 編程語言 » java菜單樹

java菜單樹

發布時間: 2022-06-17 04:37:10

java,jsp帶checkbox的樹形菜單,如何實現

jsp中帶有checkbox的屬性菜單需要用easyui組件來實現,代碼如下:

<!DOCTYPE html>

<html>

<head>

<meta charset="UTF-8">

<title>CheckBox Tree - jQuery EasyUI Demo</title>

<link rel="stylesheet" type="text/css" href="../../themes/default/easyui.css">

<link rel="stylesheet" type="text/css" href="../../themes/icon.css">

<link rel="stylesheet" type="text/css" href="../demo.css">

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

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

</head>

<body>

<h2>CheckBox Tree</h2>

<p>Tree nodes with check boxes.</p>

<div style="margin:20px 0;">

<a href="#" class="easyui-linkbutton" onclick="getChecked()">GetChecked</a>

</div>

<div style="margin:10px 0">

<input type="checkbox" checked onchange="$('#tt').tree({cascadeCheck:$(this).is(':checked')})">CascadeCheck

<input type="checkbox" onchange="$('#tt').tree({onlyLeafCheck:$(this).is(':checked')})">OnlyLeafCheck

</div>

<div class="easyui-panel" style="padding:5px">

<ul id="tt" class="easyui-tree" data-options="url:'tree_data1.json',method:'get',animate:true,checkbox:true"></ul>

</div>

<script type="text/javascript">

function getChecked(){

var nodes = $('#tt').tree('getChecked');

var s = '';

for(var i=0; i<nodes.length; i++){

if (s != '') s += ',';

s += nodes[i].text;

}

alert(s);

}

</script>

</body>

</html>

運行效果:

Ⅱ Java遞歸如何正確輸出樹形菜單

首先我們要建立樹節點的類:
[java] view plain
package com.tree;

public class Node {
private Integer id;
private Integer parentId;
private String name;
private String link;

public Integer getId() {
return id;
}
public void setId(Integer id) {
this.id = id;
}
public Integer getParentId() {
return parentId;
}
public void setParentId(Integer parentId) {
this.parentId = parentId;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getLink() {
return link;
}
public void setLink(String link) {
this.link = link;
}
}
輸出樹形菜單類:
[java] view plain
package com.tree;

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

public class Tree {
private StringBuffer html = new StringBuffer();
private List<Node> nodes;

public Tree(List<Node> nodes){
this.nodes = nodes;
}

public String buildTree(){
html.append("<ul>");
for (Node node : nodes) {
Integer id = node.getId();
if (node.getParentId() == ) {
html.append("\r\n<li id='" + id + "'>" + node.getName()+ "</li>");
build(node);
}
}
html.append("\r\n</ul>");
return html.toString();
}

private void build(Node node){
List<Node> children = getChildren(node);
if (!children.isEmpty()) {
html.append("\r\n<ul>");
for (Node child : children) {
Integer id = child.getId();
html.append("\r\n<li id='" + id + "'>" + child.getName()+ "</li>");
build(child);
}
html.append("\r\n</ul>");
}
}

private List<Node> getChildren(Node node){
List<Node> children = new ArrayList<Node>();
Integer id = node.getId();
for (Node child : nodes) {
if (id.equals(child.getParentId())) {
children.add(child);
}
}
return children;
}
}

Ⅲ java帶有checkbox的樹型菜單

<div
style="width: 100%; height: 94%; float: left; background:#f7f7f1;overflow-y:auto;"
id="treeDiv"></div>
<script type="text/javascript">
var selectedNodeID = '';
var org_treeList = new dhtmlXTreeObject(document.getElementById('treeDiv'),"100%","100%",0);
org_treeList.setImagePath("<%=path%>/images/tree/");
org_treeList.enableIEImageFix(true);
org_treeList.enableCheckBoxes(false);
org_treeList.enableDragAndDrop(false);
org_treeList.enableCheckBoxes(1);
org_treeList.enableThreeStateCheckboxes(true);

org_treeList.attachEvent("onOpenStart", function (id, state) {
if(state == '0')
{
org_treeList.setItemImage(id, 'folderOpen.gif','loading.gif');
}
if(state =='1')
{
org_treeList.setItemImage(id, 'folderOpen.gif','folderClosed.gif');
}
return true;
});
org_treeList.setXMLAutoLoading("你的xml地址");
org_treeList.loadXML("你的XML地址");

</script>

上面是頁面中的代碼 這樣的寫法是動態載入的, 你可以去下面的地址查看具體用法

Ⅳ 樹在java中的應用有哪些

首先:樹與線性表、棧、隊列等線性結構不同,樹是一種非線性結構。一棵樹只有一個根節點,如果一棵樹有了多個根節點,那它已經不再是一棵樹了,而是多棵樹的集合,也被稱為森林。
其次:java中樹的應用主要有:菜單樹,還有許可權樹,商品分類列表也是樹結構。

Ⅳ 如何用Java實現樹形結構啊

定義一個簡單的菜單類 這里是簡單的示例 你可以自行擴展package entity;import java.util.ArrayList;
import java.util.List;/**
* 菜單類
* @author Administrator
*
*/
public class Menu {
/**
* 菜單標題
*/
private String title;
/**
* 子菜單的集合
*/
private List<Menu> childs;

/**
* 父菜單
*/
private Menu parent;

/**
* 構造函數 初始化標題和子菜單集合
*/
public Menu(String title) {
this();
this.title=title;
}
/**
* 構造函數 創建一個虛擬的父菜單(零級菜單) 所有的一級菜單都歸屬於一個虛擬的零級菜單
*
*/
public Menu() {
this.childs = new ArrayList<Menu>();
}
/**
* 獲取子菜單
* @return
*/
public List<Menu> getChilds() {
return childs;
}
/**
* 獲取標題
* @return
*/
public String getTitle() {
return title;
}
/**
* 獲取父菜單
* @return
*/
public Menu getParent() {
return parent;
}
/**
* 添加子菜單並返回該子菜單對象
* @param child
* @return
*/
public Menu addChild(Menu child){
this.childs.add(child);
return child;
}
/**
* 設置父菜單
* @param parent
*/
public void setParent(Menu parent) {
this.parent = parent;
}
/**
* 設置標題
* @param title
*/
public void setTitle(String title) {
this.title = title;
}
} 測試package entity;
/**
* 測試類
* @author Administrator
*
*/
public class Test { /**
* @param args
*/
public static void main(String[] args) {
/**
* 創建一個虛擬的父菜單 用於存放一級菜單 menu01 和 menu02
*/
Menu root = new Menu();
/**
* 創建兩個一級菜單
*/
Menu menu01 = new Menu("一級菜單01");
Menu menu02 = new Menu("一級菜單02");
/**
* 加入虛擬菜單
*/
root.addChild(menu01);
root.addChild(menu02);
/**
* 為兩個一級菜單分別添加兩個子菜單 並返回該子菜單 需要進一步處理的時候 才接收返回的對象 否則只要調用方法
*/
Menu menu0101 = menu01.addChild(new Menu("二級菜單0101"));
menu01.addChild(new Menu("二級菜單0102"));
menu02.addChild(new Menu("二級菜單0201"));
Menu menu0202 = menu02.addChild(new Menu("二級菜單0202"));
/**
* 添加三級菜單
*/
menu0101.addChild(new Menu("三級菜單010101"));
menu0202.addChild(new Menu("三級菜單020201"));
/**
* 列印樹形結構
*/
showMenu(root);
} /**
* 遞歸遍歷某個菜單下的菜單樹
*
* @param menu
* 根菜單
*/
private static void showMenu(Menu menu) {
for (Menu child : menu.getChilds()) {
showMenu(child, 0);
}
} private static void showMenu(Menu menu, int tabNum) {
for (int i = 0; i < tabNum; i++)
System.out.print("\t");
System.out.println(menu.getTitle());
for (Menu child : menu.getChilds())
// 遞歸調用
showMenu(child, tabNum + 1);
}}
控制台輸出結果 一級菜單01 二級菜單0101
三級菜單010101
二級菜單0102一級菜單02
二級菜單0201
二級菜單0202
三級菜單020201

Ⅵ java 如何生成三級樹形菜單

是要返回一個json串吧。mybytis里設置好要返回自定義的結果集合。就直接可以

Ⅶ java遞歸資料庫生成菜單樹

代碼截圖摘自開源框架《若依》網頁鏈接

Ⅷ java,js 樹形菜單:easyui的樹和ztree,jstree哪個好

看你用不用右鍵菜單了。
zTree簡單但是右鍵菜單要單獨掛。
不用的話zTree吧。

Ⅸ java遞歸遍歷某個菜單下的菜單樹

不太清楚你這個Menu是哪來的類,不過如果上文你的程序能執行的話,說明menu.getChilds()是個集合,應該帶有size()的函數。你可以取出menu.getChilds()的大小,再從頭到尾遍歷它。

int count=menu.getChilds().size();

for(int i=0;i<count;i++)
{
showMenu( ((Menu)menu.getChilds().get(i)) , 0 );
//我估計這些children是個list,可以順序遍歷;但也有
//部分可能是set,那樣就得用iterator了。
}

Ⅹ java 中關於菜單,菜單項,菜單條如何區分

菜單條就是一個桌面程序上面那一排菜單的總的集合,比如文件、編輯、工具什麼的那一排就是菜單條,其中的文件、幫助這些就是菜單,文件下面的新建、打開就是菜單項。
總的來說菜單項組成菜單,菜單的集合就是菜單條。

熱點內容
安卓系統網路播放器哪個好 發布:2025-02-06 20:42:02 瀏覽:814
頭條緩存的視頻格式 發布:2025-02-06 20:32:18 瀏覽:113
ftp不顯示文件夾 發布:2025-02-06 20:30:37 瀏覽:123
蘋果手機解壓怎麼打開 發布:2025-02-06 20:29:35 瀏覽:473
單片機程序存儲器 發布:2025-02-06 20:29:31 瀏覽:206
串的c語言 發布:2025-02-06 20:25:44 瀏覽:745
編程函數總結 發布:2025-02-06 20:09:11 瀏覽:316
編程obj 發布:2025-02-06 19:59:52 瀏覽:844
津貼腳本 發布:2025-02-06 19:44:10 瀏覽:741
好分數里如何修改密碼 發布:2025-02-06 19:42:30 瀏覽:157