DW+ASP 玩轉動態二級菜單
來源:互聯網
上載者:User
本人比較B,不懂得怎麼樣用視頻來解決,只好用我這個讓人糊裡糊塗的話來寫了。
一般情況下這種情況是來對二級的目錄有用,對於現在網站流傳的JS好多種,但都無外乎那些令像我這樣的菜鳥暈頭轉向的JS代碼。。一下子for...一下子array的。
廢話少說,切入正題了。
首先得建一個表,當然,如果你的表中就已經建好目錄的話,那這一步可以省略了。但有一點要提醒:這個表是我這個例子的使用依據(不知道這樣說對不對)。
由於我用的表是ACCESS的,所以建表就不說了,只列出這個兩個表的相應的欄位名(資料庫名:db.mdb):
表名:type_tree ——父類
欄位:type_id(自動編號) type_name(類別名稱)
表名:s_type ——子類
欄位:id(自動編號) s_name(子類別名稱) type_id(父類ID)——與父類表相對應
現在是建立資料庫連接:
Dim conn, connStrSet conn = server.CreateObject("ADODB.Connection")connStr = "Provider = Microsoft.jet.oledb.4.0;"connStr = connStr & "Data Source = " & server.mappath("db.mdb")Conn.Open connStr
以上代碼應當不用再解釋了吧,都是大家常用的代碼。。
現在進入實質性的操作:)
二級關聯菜單一般情況下都是以下拉式功能表來做,這裡我也不例外,一樣用下拉式功能表來做。
只不過這裡有一個地方不一樣哦。
就是一個用的是導向功能表,這一點很重要,成功與否全看這個菜單有沒有用對!
以下是這個導向功能表的代碼!
<select name="first" onChange="MM_jumpMenu('parent',this,0)">
<%
sql = "select [type_id],[type_name] from [type_tree]"
set rs = conn.execute(sql)'取得父類的ID及名稱
if rs.eof or rs.bof then
response.write "<option>-----</option>" '如果沒有記錄,就顯示-----
else
while not(rs.eof or rs.bof) '有記錄,就將父名稱列出來,形成下拉。
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>")