" />
當前位置:編程學習大全網 - 源碼下載 - 多級菜單源代碼設置

多級菜單源代碼設置

最好不要每次都從數據庫導出,太慢了。當然,下面的XML也可以由ASP從數據中導出,然後由下面的代碼調用。

基於XML的動態n級鏈接

mselect.xml

& lt?XML version = " 1.0 " encoding = " GB 2312 "?& gt

& ltTroot & gt

& ltitem id = " 1 " PID = " 0 " c = " 1 " >大學

& ltItem id="2" pid="0" c="3 " >中學

& ltItem id="3" pid="0" c="3 " >小學

& ltItem id="4" pid="2" c="2 " >中學

& ltItem id="5" pid="2" c="5 " >初中

& ltItem id="6" pid="15" c="3 " >清華大學。

& ltItem id="7" pid="15" c="4 " >北京大學。

& ltItem id="8" pid="5" c="3 " >天津鐵三中學

& ltItem id="9" pid="4" c="3 " >天津第二中學

& ltitem id = " 10 " PID = " 16 " c = " 2 " >天津音樂學院

& ltitem id = " 11 " PID = " 15 " c = " 5 " >天津商業大學

& ltItem id="12" pid="4" c="3 " >華鑰中學

& ltItem id="13" pid="3" c="6 " >魏坤路小學

& ltItem id="14" pid="2" c="6 " >第七中學

& ltitem id = " 15 " PID = " 1 " c = " 1 " >綜合學院

& ltitem id = " 16 " PID = " 1 " c = " 1 " >藝術學院

& ltitem id = " 17 " PID = " 15 " c = " 4 " >醫科大學

& ltitem id = " 18 " PID = " 15 " c = " 4 " >天津師範大學

& ltitem id = " 19 " PID = " 15 " c = " 23 " >天津大學

& ltItem id="20" pid="15" c="7 " >南開大學

& ltItem id="21" pid="4" c="23 " >天津市鐵壹中學

& ltItem id="22" pid="5" c="5 " >天津市鐵壹中學

& ltItem id="23" pid="3" c="3 " >天津鐵路職工子弟第三小學

& ltItem id="24" pid="3" c="3 " >天津市第壹鐵路職工子弟小學

& ltItem id="25" pid="16" c="3 " >美術學院

& ltItem id="26" pid="16" c="3 " >體育學院

& lt/Troot & gt;

mselect.htm

& ltHTML & gt

& ltHEAD & gt

& ltTITLE & gtXML版本的多級鏈接

& lt腳本語言= javascript & gt

& lt!-

/***********************************************

//

//用DOM實現:基於XML的動態N級鏈接

//

//**********************************************/

//最終版權歸瑞思科技所有,您可以在沒有授權的情況下使用,但請保留這些信息。

//

//作者:rust soft(拍軟狂歌)

//多級鏈接選擇集

var objSelects = new Array();

//創建預期的選擇對象。

函數funCreateSelectEl(passPid)

{

//創建壹個DOMDocument對象

var XML src = new ActiveX object(" MicroSoft。XML DOM ");

xmlSrc = xmlSource。XMLDocument

// root是文檔對象的根節點。

var root = XML src . documentelement;

//獲取具有傳遞的父ID的所有節點。

var current items = root . select nodes("//Troot/Item[@ PID = "+passPid+"]");

var I items = current items . length;

if(I items & gt;0)

{

//創建壹個Select並編寫OnChange事件。

var new child = document . createelement(" & lt;SELECT onchange = ' eventSltChange()' id = ' SLT "+objselects . length+" ' & gt);

//向集合中添加新的Select對象。

objSelects[objSelects . length]= new child;

//將所有選項添加到選擇對中。

var I;

for(I = 0;我& lt項目;i++)

{

var op tion = document . createelement(" OPTION ");

Option.text = currentItems[i]。文本;

Option.value = currentItems[i]。屬性[0]。文本;

new child . options . add(op tion);

}

//將新創建的選擇放在目標上。

odiv . appendchild(new child);

//先設置壹個空值。

newChild.value =

}

}

// Select的OnChange事件響應函數

函數eventSltChange()

{

//刪除該級別下的所有子級。

var I;

for(I = objselects . length-1;我& gtparse int(event . srcelement . id . replace(" SLT ",""),10);我-)

{

odiv . remove child(objSelects[I]);

objselects . pop();

}

//響應新的選擇

funCreateSelectEl(event . srcelement . value);

//鏈接的選擇結果

var resultArray =新數組();

for(I = 0;我& ltobjSelects.lengthi++)

{

resultArray[i] = objSelects[i]。價值;

}

//輸出選定的

output . innertext = result array . join("-");

}

//-& gt;

& lt/SCRIPT & gt;

& lt/HEAD & gt;

& ltBODY onload = " funCreateSelectEl(0)" & gt;

& ltDIV ID = " oDIV " & gt& lt/DIV & gt;

& ltXML ID = " XML source " src = " m select . XML "/& gt;

& ltBR/>;

選定的結果:

& lt/BODY & gt;

& lt/HTML & gt;

把mselect.xml和mselect.xml保存在同壹個目錄下,IE運行mselect.xml。

  • 上一篇:壹套完整的crm系統都應該具備哪些功能?
  • 下一篇:JS如何實現左右滾動輪播代碼詳細點
  • copyright 2024編程學習大全網