Ajax实现无刷新树

Ajax实现无刷新树
1.建立一个aspx页面
html代码
Ajax实现无刷新树<html xmlns="http://www.w3.org/1999/xhtml" >
Ajax实现无刷新树
<head id="Head1" runat="server">
Ajax实现无刷新树    
<title>小山</title>
Ajax实现无刷新树    
<link type="text/css" href="../../Styles/tree_css/tree.css" rel="stylesheet">
Ajax实现无刷新树
</head>
Ajax实现无刷新树
<body>
Ajax实现无刷新树    
<form id="Form1" runat="server">
Ajax实现无刷新树    
<table width=100% cellpadding=0 cellspacing=0 border=0>
Ajax实现无刷新树        
<colgroup>
Ajax实现无刷新树            
<col width=180 />
Ajax实现无刷新树            
<col />
Ajax实现无刷新树        
</colgroup>
Ajax实现无刷新树        
<tr>
Ajax实现无刷新树            
<td>
Ajax实现无刷新树                
<div class="TreeMenu" id="CategoryTree" style="width: 100%; height: 489px">
Ajax实现无刷新树                
</div>
Ajax实现无刷新树            
</td>
Ajax实现无刷新树            
<td>
Ajax实现无刷新树                
<iframe id=furl height=20 style="height: 497px; width: 100%;"></iframe>
Ajax实现无刷新树            
</td>
Ajax实现无刷新树        
</tr>
Ajax实现无刷新树    
</table>    
Ajax实现无刷新树                            
Ajax实现无刷新树Ajax实现无刷新树            
<script language="jscript">Ajax实现无刷新树
Ajax实现无刷新树            
function el(id)
Ajax实现无刷新树Ajax实现无刷新树            
Ajax实现无刷新树{
Ajax实现无刷新树                
return document.getElementById(id);                
Ajax实现无刷新树            }

Ajax实现无刷新树            
function ExpandSubCategory(iCategoryID)
Ajax实现无刷新树Ajax实现无刷新树            
Ajax实现无刷新树{
Ajax实现无刷新树                
var li_father = el("li_" + iCategoryID);
Ajax实现无刷新树                
if (li_father.getElementsByTagName("li").length > 0//分类已下载
Ajax实现无刷新树Ajax实现无刷新树
                Ajax实现无刷新树{
Ajax实现无刷新树                    ChangeStatus(iCategoryID);
Ajax实现无刷新树                    
return;
Ajax实现无刷新树                }

Ajax实现无刷新树                
Ajax实现无刷新树                li_father.className 
= "Opened";
Ajax实现无刷新树                
Ajax实现无刷新树                switchNote(iCategoryID, 
true);
Ajax实现无刷新树                AjaxMethod.GetSubCategory(iCategoryID, GetSubCategory_callback);                
Ajax实现无刷新树            }

Ajax实现无刷新树
Ajax实现无刷新树            
function GetSubCategory_callback(response)
Ajax实现无刷新树Ajax实现无刷新树            
Ajax实现无刷新树{
Ajax实现无刷新树                
var dt = response.value.Tables[0];
Ajax实现无刷新树                
if (dt.Rows.length > 0)
Ajax实现无刷新树Ajax实现无刷新树                
Ajax实现无刷新树{
Ajax实现无刷新树                    
var iCategoryID = dt.Rows[0].FatherID;
Ajax实现无刷新树                }

Ajax实现无刷新树                
var li_father = el("li_" + iCategoryID);
Ajax实现无刷新树                
var ul = document.createElement("ul");
Ajax实现无刷新树                
for (var i = 0;i < dt.Rows.length;i++)
Ajax实现无刷新树Ajax实现无刷新树                
Ajax实现无刷新树{
Ajax实现无刷新树                    
if (dt.Rows[i].IsChild == 1//叶子节点
Ajax实现无刷新树Ajax实现无刷新树
                    Ajax实现无刷新树{
Ajax实现无刷新树                        
var li = document.createElement("li");
Ajax实现无刷新树                        li.className 
= "Child";
Ajax实现无刷新树                        li.id 
= "li_" + dt.Rows[i].CategoryID;
Ajax实现无刷新树                        
Ajax实现无刷新树                        
var img = document.createElement("img");
Ajax实现无刷新树                        img.id 
= dt.Rows[i].CategoryID;
Ajax实现无刷新树                        img.className 
= "s";
Ajax实现无刷新树                        img.src 
= "../../Styles/tree_css/s.gif";
Ajax实现无刷新树                        
Ajax实现无刷新树                        
var a = document.createElement("a");
Ajax实现无刷新树                        
var id = dt.Rows[i].CategoryID;
Ajax实现无刷新树                        a.onmouseover 
= function()
Ajax实现无刷新树Ajax实现无刷新树                        
Ajax实现无刷新树{
Ajax实现无刷新树                            PreviewImage(id);
Ajax实现无刷新树                        }
;
Ajax实现无刷新树                        a.href 
= "javascript:OpenDocument('" + dt.Rows[i].CategoryID + "');";
Ajax实现无刷新树                        a.innerHTML 
= dt.Rows[i].CategoryName;
Ajax实现无刷新树                    }

Ajax实现无刷新树                    
else
Ajax实现无刷新树Ajax实现无刷新树                    
Ajax实现无刷新树{
Ajax实现无刷新树                        
var li = document.createElement("li");
Ajax实现无刷新树                        li.className 
= "Closed";
Ajax实现无刷新树                        li.id 
= "li_" + dt.Rows[i].CategoryID;
Ajax实现无刷新树                        
Ajax实现无刷新树                        
var img = document.createElement("img");
Ajax实现无刷新树                        img.id 
= dt.Rows[i].CategoryID;
Ajax实现无刷新树                        img.className 
= "s";
Ajax实现无刷新树                        img.src 
= "../../Styles/tree_css/s.gif";
Ajax实现无刷新树Ajax实现无刷新树                        img.onclick 
= function () Ajax实现无刷新树{
Ajax实现无刷新树                            ExpandSubCategory(
this.id);
Ajax实现无刷新树                        }
;
Ajax实现无刷新树                        img.alt 
= "展开/折叠";
Ajax实现无刷新树                        
Ajax实现无刷新树                        
var a = document.createElement("a");
Ajax实现无刷新树                        a.href 
= "javascript:ExpandSubCategory(" +
Ajax实现无刷新树                            dt.Rows[i].CategoryID 
+ ");";
Ajax实现无刷新树                        a.innerHTML 
= dt.Rows[i].CategoryName;
Ajax实现无刷新树                    }

Ajax实现无刷新树                    li.appendChild(img);
Ajax实现无刷新树                    li.appendChild(a);
Ajax实现无刷新树                    ul.appendChild(li);    
Ajax实现无刷新树                }

Ajax实现无刷新树                li_father.appendChild(ul);
Ajax实现无刷新树                
Ajax实现无刷新树                switchNote(iCategoryID, 
false);
Ajax实现无刷新树            }

Ajax实现无刷新树            
Ajax实现无刷新树            
// 叶子节点的单击响应函数
Ajax实现无刷新树
            function OpenDocument(iCategoryID)
Ajax实现无刷新树Ajax实现无刷新树            
Ajax实现无刷新树{
Ajax实现无刷新树                
// 预加载信息
Ajax实现无刷新树
                PreloadFormUrl(iCategoryID);
Ajax实现无刷新树            }

Ajax实现无刷新树            
Ajax实现无刷新树            
function PreviewImage(iCategoryID)
Ajax实现无刷新树Ajax实现无刷新树            
Ajax实现无刷新树{
Ajax实现无刷新树                
Ajax实现无刷新树            }

Ajax实现无刷新树
Ajax实现无刷新树            
function ChangeStatus(iCategoryID)
Ajax实现无刷新树Ajax实现无刷新树