惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

Cloudbric
Cloudbric
E
Exploit-DB.com RSS Feed
SecWiki News
SecWiki News
Forbes - Security
Forbes - Security
N
News | PayPal Newsroom
S
Security @ Cisco Blogs
Schneier on Security
Schneier on Security
V
V2EX - 技术
S
Secure Thoughts
W
WeLiveSecurity
Google DeepMind News
Google DeepMind News
C
CERT Recently Published Vulnerability Notes
NISL@THU
NISL@THU
S
Securelist
S
Security Archives - TechRepublic
Know Your Adversary
Know Your Adversary
V
Vulnerabilities – Threatpost
Security Latest
Security Latest
Recent Commits to openclaw:main
Recent Commits to openclaw:main
G
GRAHAM CLULEY
H
Hacker News: Front Page
Microsoft Azure Blog
Microsoft Azure Blog
I
Intezer
Google Online Security Blog
Google Online Security Blog
美团技术团队
阮一峰的网络日志
阮一峰的网络日志
T
The Exploit Database - CXSecurity.com
钛媒体:引领未来商业与生活新知
钛媒体:引领未来商业与生活新知
Webroot Blog
Webroot Blog
Jina AI
Jina AI
Engineering at Meta
Engineering at Meta
P
Proofpoint News Feed
The Cloudflare Blog
I
InfoQ
L
LangChain Blog
U
Unit 42
P
Proofpoint News Feed
S
Schneier on Security
S
Security Affairs
Y
Y Combinator Blog
T
Tenable Blog
N
News and Events Feed by Topic
MyScale Blog
MyScale Blog
量子位
Google DeepMind News
Google DeepMind News
Cyberwarzone
Cyberwarzone
博客园 - 聂微东
D
Darknet – Hacking Tools, Hacker News & Cyber Security
GbyAI
GbyAI
AWS News Blog
AWS News Blog

博客园 - lzb

预排序遍历树算法 新思创:政务办公系统解决方案 OA系统权限分配实现方案【再转】 关于权限设计的探讨 工作流管理系统 Ext-Menu-action禁用 Ext-Menu-日期控件过长 Ext-TabPanel-插件 Google-首页效果图-源代码 Ext-Layout Ext-Grid-HttpProxy-分页 JAVASCRIPT-全面理解javascript的Arguments,caller,callee,call,apply JAVASCRIPT-继承 Core/Ext.js 转自JS堂 Core/Ext.extend 从继承说起 转自JS堂 What is the basic thing to keep in mind about forms 修改Eclipse文本文件默认编码 Javascript 原型和继承(Prototypes and Inheritance) Ext-Xml-Grid-汉化、加载
Ext-tree
lzb · 2008-12-11 · via 博客园 - lzb

<%
/**
 
* @author lzb
 
* Created on 2008-12-11
 
* 练习使用Ext-tree
 
* 
 
*/
 
%>
 
<%@ page contentType="text/html; charset=UTF-8" %>
<%@ include file="http://www.cnblogs.com/http://www.cnblogs.com/../common/common_page.jsp" %>
<html>
<head>
<title>练习使用Ext-tree</title>
    
<!-- Ext css -->
    
<link rel="stylesheet" type="text/css" href="http://www.cnblogs.com/../resources/css/ext-all.css"/>
    
<link rel="stylesheet" type="text/css" href="../forms.css"/>
    
<link rel="stylesheet" type="text/css" href="http://www.cnblogs.com/examples.css"/>
    
<!-- Ext js -->    
    
<script type="text/javascript" src="http://www.cnblogs.com/../adapter/ext/ext-base.js"></script>
    
<script type="text/javascript" src="http://www.cnblogs.com/../ext-all.js"></script>
    
<script type="text/javascript" src="http://www.cnblogs.com/../source/locale/ext-lang-zh_CN.js"></script>
    
<script type="text/javascript">
        
//一个简单的树,静态树
        //1、代码的第一句使用new Ext.tree.TreeNode 类来创建一个树节点
        //2、第二句使用树节点的root的appendChild 方法来往该节点中加入一个子节点
        //3、最后直接使用new Ext.tree.TreePanel来创建一个树面板,要树面板的初始化参数中指定树的root 属性值为前面创建的root 节点,也就是树根节点        
        Ext.onReady(function(){
        
var root=new Ext.tree.TreeNode({
            id:
"root",
            href:
"http://www.baidu.com",
            hrefTarget:
"_self",
            text:
"树的根"});
        
//root.appendChild(new Ext.tree.TreeNode({
        //    id:"c1",
        //    text:"子节点"
        //    }));
        var c1 = new Ext.tree.TreeNode({
            id:
"c1",
            href:
"http://www.google.cn",
            hrefTarget:
"_blank",
            text:
"sonNode"
        });
        root.appendChild(c1);
        
var tree=new Ext.tree.TreePanel({
            renderTo:
"tree1",
            root:root,
            width:
200
            });
        tree.on(
"click",function(node,event){
            alert(
"您点击了"+node.text);
        })
        c1.on(
"click",function(node,event){
            alert(node.text);
        })                    
        }); 
        
//异步加载树(异步加载:数据不是一次发送给客户端的,而是根据用户的动作发送特定的数据)
        //异步加载的url可以使jsp,js,或者是json
        Ext.onReady(function(){
            
var root=new Ext.tree.AsyncTreeNode({
                id:
"root",
                text:
"树的根"
            });    
            
var tree=new Ext.tree.TreePanel({
                renderTo:
"tree2",
                root:root,
                loader: 
new Ext.tree.TreeLoader({url:"treedata.json"}),
                width:
100
            });                    
        });    
        
        
//混合树
        //如果一个AsyncTreeNode 节点在准备加载子节点的时候,如果该节点上没有定义loader,则会使用TreePanel 中定义的loader 作为加载器
        Ext.onReady(function(){
        
var root=new Ext.tree.TreeNode({
            id:
"root",
            href:
"http://www.baidu.com",
            hrefTarget:
"_self",
            text:
"树的根"});
        
var c1 = new Ext.tree.TreeNode({
            id:
"hh_c1",
            href:
"http://www.google.cn",
            hrefTarget:
"_blank",
            text:
"sonNode1"
        });
        
var c2 = new Ext.tree.AsyncTreeNode({
            id:
"hh_c2",
            text:
"sonNode2"
        })
        
var c3 = new Ext.tree.AsyncTreeNode({
            id:
"hh_c3",
            text:
"sonNode3"
        })        
        root.appendChild(c1);
        root.appendChild(c2);
        root.appendChild(c3);
        
var tree=new Ext.tree.TreePanel({
            renderTo:
"tree3",
            root:root,
            width:
200,
            loader:
new Ext.tree.TreeLoader({
            applyLoader:
false,
            url:
"treedata.json"
            })                        
            });
        });         
                  
       
</script>
</head>
<body>
    
<div id="tree1"></div>
    
<div id="tree2"></div>
    
<div id="tree3"></div>
</body>
</HTML>