六月婷婷综合激情-六月婷婷综合-六月婷婷在线观看-六月婷婷在线-亚洲黄色在线网站-亚洲黄色在线观看网站

明輝手游網(wǎng)中心:是一個(gè)免費(fèi)提供流行視頻軟件教程、在線學(xué)習(xí)分享的學(xué)習(xí)平臺(tái)!

DW+ASP 玩轉(zhuǎn)動(dòng)態(tài)二級(jí)菜單

[摘要]一般情況下這種情況是來(lái)對(duì)二級(jí)的目錄有用,對(duì)于現(xiàn)在網(wǎng)站流傳的JS好多種,但都無(wú)外乎那些令像我這樣的菜鳥(niǎo)暈頭轉(zhuǎn)向的JS代碼。。一下子for...一下子array的。廢話(huà)少說(shuō),切入正題了。首先得建一個(gè)表,當(dāng)然,如果你的表中就已經(jīng)建好目錄的話(huà),那這一步可以省略了。但有一點(diǎn)要提醒:這個(gè)表是我這個(gè)例子的使用依...
一般情況下這種情況是來(lái)對(duì)二級(jí)的目錄有用,對(duì)于現(xiàn)在網(wǎng)站流傳的JS好多種,但都無(wú)外乎那些令像我這樣的菜鳥(niǎo)暈頭轉(zhuǎn)向的JS代碼。。一下子for...一下子array的。
廢話(huà)少說(shuō),切入正題了。

首先得建一個(gè)表,當(dāng)然,如果你的表中就已經(jīng)建好目錄的話(huà),那這一步可以省略了。但有一點(diǎn)要提醒:這個(gè)表是我這個(gè)例子的使用依據(jù)(不知道這樣說(shuō)對(duì)不對(duì))。

由于我用的表是ACCESS的,所以建表就不說(shuō)了,只列出這個(gè)兩個(gè)表的相應(yīng)的字段名(數(shù)據(jù)庫(kù)名:db.mdb):
表名:type_tree ——父類(lèi)
字段:type_id(自動(dòng)編號(hào)) type_name(類(lèi)別名稱(chēng))


表名:s_type   ——子類(lèi)
字段:id(自動(dòng)編號(hào)) s_name(子類(lèi)別名稱(chēng)) type_id(父類(lèi)ID)——與父類(lèi)表相對(duì)應(yīng)


現(xiàn)在是建立數(shù)據(jù)庫(kù)連接:
Dim conn, connStr
Set conn = server.CreateObject("ADODB.Connection")
connStr = "Provider = Microsoft.jet.oledb.4.0;"
connStr = connStr & "Data Source = " & server.mappath("db.mdb")
Conn.Open connStr

以上代碼應(yīng)當(dāng)不用再解釋了吧,都是大家常用的代碼。。

現(xiàn)在進(jìn)入實(shí)質(zhì)性的操作:)
二級(jí)關(guān)聯(lián)菜單一般情況下都是以下拉菜單來(lái)做,這里我也不例外,一樣用下拉菜單來(lái)做。
只不過(guò)這里有一個(gè)地方不一樣哦。
就是一個(gè)用的是跳轉(zhuǎn)菜單,這一點(diǎn)很重要,成功與否全看這個(gè)菜單有沒(méi)有用對(duì)!
以下是這個(gè)跳轉(zhuǎn)菜單的代碼!
<select name="first" onChange="MM_jumpMenu(\'parent\',this,0)">
<%
sql = "select [type_id],[type_name] from [type_tree]"
set rs = conn.execute(sql)\'取得父類(lèi)的ID及名稱(chēng)
if rs.eof or rs.bof then
response.write "<option>-----</option>" \'如果沒(méi)有記錄,就顯示-----
else
while not(rs.eof or rs.bof) \'有記錄,就將父名稱(chēng)列出來(lái),形成下拉。
response.write ("<option value=\'?sec=" & rs(0) & "\'")
if cstr(rs(0)) = request.querystring("sec") then
    response.write "selected"
end if
response.write (">" & rs(1) & "</option>")
rs.movenext
wend
rs.movefirst \'將游標(biāo)移到第一條,以備下面之用。
end if
%>
</select>


哦,對(duì)了,還有一段代碼忘了貼出來(lái)了,這個(gè)是跳轉(zhuǎn)菜單的關(guān)鍵啊,看我粗心的!
補(bǔ)上補(bǔ)上:
<script language="JavaScript" type="text/JavaScript">
<!--
function MM_jumpMenu(targ,selObj,restore){ //v3.0
eval(targ+".location=\'"+selObj.options[selObj.selectedIndex].value+"\'");
if (restore) selObj.selectedIndex=0;
}
//-->
</script>


以上代碼貼到<head>里,是DW生成,我看不太懂什么意思,所以不注解了:D

現(xiàn)在是菜單的二級(jí)部分,這里不是用跳轉(zhuǎn)菜單,只是一個(gè)列表罷了,所以代碼跟上面的跳轉(zhuǎn)菜單也就差一個(gè)onchange這個(gè)函數(shù)。
以下是這個(gè)菜單的代碼,由于循環(huán)跟判斷相對(duì)上面來(lái)說(shuō)復(fù)雜一些,大伙要看清楚一點(diǎn)哦。
<select name="second">
<%if rs.eof or rs.bof then
response.write ("<option>--------</option>")
else
if request.querystring("sec") = "" then   \'獲取跳轉(zhuǎn)之后的sec值
   temp=rs(0)   如果為空,就把temp的值設(shè)為第一條記錄的值
else
   temp = request.querystring("sec")   \'否則就為收到的值
end if
subsql = "select [s_name] from [s_type] where type_id=\'"&temp&"\'"
set subrs = conn.execute(subsql)   \'列出一切資料為temp的記錄
if subrs.eof or subrs.bof then
  response.write ("<option>-----</option>")
  \'如果沒(méi)有記錄,則在這個(gè)列表中顯示"-----"
else
 while not(subrs.eof or subrs.bof)\'否則就用循環(huán)列出一切符合條件的記錄。
   response.write ("<option value=" & subrs(0) & ">" & subrs(0) & "</option>")
 subrs.movenext
 wend
end if
end if

\'關(guān)閉所有的記錄集
subrs.close
set subrs = nothing
rs.close
set rs = nothing
conn.close
set conn = nothing
%>
</select>


到現(xiàn)在為止,已經(jīng)將這個(gè)二級(jí)菜單的制過(guò)程做完了,很簡(jiǎn)單的一個(gè)看把我給說(shuō)的。
大家看不懂再說(shuō)吧,反正我已經(jīng)不知道該怎么說(shuō)了。
高手們不吝賜教啊……





主站蜘蛛池模板: 午夜在线播放免费高清观看 | 青青草原免费在线观看视频 | 伊人网视频在线 | 青娱乐极品视频在线 | 日韩精品亚洲人成在线播放 | 日本高清不卡网站免费 | 青青草视频国产 | 亚洲国产日韩在线观看 | 亚洲 欧美 成人日韩 | 日韩不卡在线观看 | 三级在线视频 | 欧美亚洲人成网站在线观看刚交 | 啪啪噜噜 | 婷婷伊人久久 | 日本一道高清 | 特黄特色的免费大片看看 | 日本不卡在线视频高清免费 | 色橹橹欧美在线观看高清视频 | 色天使色婷婷丁香久久综合 | 天天干天天操天天干 | 四虎永久影院 | 亚洲国产精品免费在线观看 | 亚洲狼网站狼狼鲁亚洲下载 | 日韩一区二区不卡 | 日本道精品一区二区三区 | 三级经典三级日本三级欧美 | 青青草一区 | 三级国产4国语三级在线 | 日本激情视频网站 | 亚洲91色 | 视频午夜 | 日本天堂免费 | 四虎精品视频在线永久免费观看 | 日本成人在线网址 | 香蕉视频在线观看网址 | 午夜性爽视频男人的天堂在线 | 亚洲福利一区 | 日韩三级一区二区三区 | 天天摸天天做天天爽 | 在线九色 | 人人爱人人做 |