第三段Html代碼塊
WEB控件還會輸出一個名為“SkyTreeViewControlExpendNodebyID”的Javascript函數,該函數用於展開或收縮節點,而與之配套的定義了一個名為SkyTreeVIEwControlCurrentTreeNode的全局變量,用於保存當前高亮度顯示的節點的編號。這段Javascript代碼為
// 定義樹狀列表的當前節點對象
var SkyTreeVIEwContrlCurrentTreeNode ;
//
//---------------- 展開指定編號的樹狀列表的節點---------------
// 參數strID 指明節點的ID號
// 參數bolSelect 指明是否高亮度顯示這個樹狀列表節點
//
function SkyTreeVIEwContrlExpendNodeByID(strID , bolSelect )
{
// 獲得節點的展開點圖片對象
var myExpend = document.getElementById(strID + '_expend');
// 獲得節點的圖標圖片對象
var myIcon = document.getElementById(strID + '_icon');
// 獲得節點的文本對象
var myText = document.getElementById(strID + '_text');
// 獲得子節點表格
var myTable = document.getElementById(strID + '_table');
if( myText == null )
return ;
if( bolSelect )
{
// 設置樹狀列表節點高亮度顯示
if( SkyTreeVIEwContrlCurrentTreeNode != myText
&& SkyTreeVIEwContrlCurrentTreeNode != null)
{
SkyTreeViewContrlCurrentTreeNode.className = 'SkyTreeVIEwControl_TreeNode';
}
SkyTreeVIEwContrlCurrentTreeNode = myText;
SkyTreeViewContrlCurrentTreeNode.className = 'SkyTreeVIEwControl_SelectedNode';
}
// 展開或收縮子節點
if( myExpend != null
&& myIcon != null
&& myTable != null )
{
// 切換節點前面的展開或收縮樣式的圖標
var SrcBack = myIcon.src ;
myIcon.src = myIcon.getAttribute('SrcBack');
myIcon.setAttribute( 'SrcBack' , SrcBack );
// 切換節點前面的+ 或者- 樣式的圖標
SrcBack = myExpend.src ;
myExpend.src = myExpend.getAttribute('SrcBack');
myExpend.setAttribute( 'SrcBack' , SrcBack );
// 顯示或隱藏包含子節點的表格對象
if( myTable.style.display != 'none' )
{
myTable.style.display='none';
}
else
{
myTable.style.display='';
}
}
var dyload = false;
if( myTable == null )
{
// 若不存在包含子節點的表格對象則嘗試動態加載子節點
// 此時節點的XMLSource擴展屬性就保存著定義子節點的XML文檔URL地址。
var XMLSource = myText.getAttribute('XMLSource');
if( XMLSource != null && XMLSource.length > 0 )
{
// 若設置了該XML文檔地址則刪除XMLSource 擴展屬性並
myText.removeAttribute('XMLSource');
var xml = document.getElementById( 'SkyTreeVIEwControlTempXML');
if( XML != null )
{
// 設置“正在加載”字樣為顯示狀態
SkyTreeVIEwControlDyanmicRootNodeID = strID ;
var lbl = document.getElementById( SkyTreeVIEwControlDyanmicRootNodeID +'_Loading');
if( lbl != null )
{
lbl.style.display = '';
}
// 調用編號為SkyTreeVIEwControlTempXML 的XML數據島來異步加載XML文檔
xml.src = XMLSource ;
dyload = true ;
}
}
}
if( dyload == false )
{
//myText.scrollIntoVIEw( false );
}
}//function SkyTreeVIEwContrlExpendNodeByID(strID)