treeview不能展开的问题

来源:互联网 发布:ps cs6 mac 序列号 编辑:程序博客网 时间:2024/06/04 17:49

用javascript生成了一个树,生成代码如下,不能展开, 后来发现给根接点expanded赋值在添加第二个节点时已改变,

这是树不能展开的原因。在最后加上一句话,把根节点的expanded属性重新设置成true,树才能顺利展开。

跟踪代码发现是在tree.htc文件的generateItem(), 方法中值被修改了。

至于为什么要修改我就不知道了

<%@ Page language="c#" Codebehind="WebForm1.aspx.cs" AutoEventWireup="false" Inherits="WebApplication1.WebForm1" %>
<%@ Register TagPrefix="iewc" Namespace="Microsoft.Web.UI.WebControls" Assembly="Microsoft.Web.UI.WebControls" %>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" >
<HTML>
    
<HEAD>
        
<title>WebForm1</title>
        
<meta name="GENERATOR" Content="Microsoft Visual Studio .NET 7.1">
        
<meta name="CODE_LANGUAGE" Content="C#">
        
<meta name="vs_defaultClientScript" content="JavaScript">
        
<meta name="vs_targetSchema" content="http://schemas.microsoft.com/intellisense/ie5">
    
</HEAD>
    
<body MS_POSITIONING="GridLayout">
        
<form id="Form1" method="post" runat="server">
            
<iewc:TreeView id="DeptTree" style="Z-INDEX: 101; LEFT: 128px; POSITION: absolute; TOP: 200px"
                runat
="server"></iewc:TreeView>
        
</form>
        
<script type="text/javascript">
        
var dpTree = document.getElementById("DeptTree");
        window.document.body.onload 
= function()
        
{
            initTree();
        }

        
function initTree()
        
{
            
var root = newTreeNode("0""中国");
            alert(root.getAttribute(
"expanded"));
            dpTree.add(root);
            alert(root.getAttribute(
"expanded"));
            
var child1 = newTreeNode("1""湖北");
            child1.setAttribute(
"expanded""true");
            root.add(child1);
            
var child2 = newTreeNode("2""武汉");
            child1.add(child2);
            root.setAttribute(
"expanded""true");
        }

        
function newTreeNode(id, name)
        
{
            
var node  = dpTree.createTreeNode();
            node.setAttribute(
"id", id );
            node.setAttribute(
"text", name);
            node.setAttribute(
"expanded""true")
            
return node;
        }

        
</script>
    
</body>
</HTML>
 c
原创粉丝点击