DW+ASP 玩转动态二级菜单

经典的CSS二级菜单修改:水平方向 博文《CSS二级菜单》(http://blog.csdn.net/smallfools/archive/2009/06/26/4300726.aspx)中的源代码之一 立即下载
本人比较B,不懂得怎么样用视频来解决,只好用我这个让人糊里糊涂的话来写了。

一般情况下这种情况是来对二级的目录有用,对于现在网站流传的JS好多种,但都无外乎那些令像我这样的菜鸟晕头转向的JS代码。。一下子for...一下子array的。
废话少说,切入正题了。

首先得建一个表,当然,如果你的表中就已经建好目录的话,那这一步可以省略了。但有一点要提醒:这个表是我这个例子的使用依据(不知道这样说对不对)。

由于我用的表是ACCESS的,所以建表就不说了,只列出这个两个表的相应的字段名(数据库名:db.mdb):
表名:type_tree ——父类
字段:type_id(自动编号) type_name(类别名称)


表名:s_type   ——子类
字段:id(自动编号) s_name(子类别名称) type_id(父类ID)——与父类表相对应


现在是建立数据库连接:
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
以上代码应当不用再解释了吧,都是大家常用的代码。。

现在进入实质性的操作:)
二级关联菜单一般情况下都是以下拉菜单来做,这里我也不例外,一样用下拉菜单来做。
只不过这里有一个地方不一样哦。
就是一个用的是跳转菜单,这一点很重要,成功与否全看这个菜单有没有用对!
以下是这个跳转菜单的代码!
<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>")
rs.movenext
wend
rs.movefirst '将游标移到第一条,以备下面之用。
end if
%>
</select>


哦,对了,还有一段代码忘了贴出来了,这个是跳转菜音的关键啊,看我粗心的!
补上补上:
<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
现在是菜单的二级部分,这里不是用跳转菜单,只是一个列表罢了,所以代码跟上面的跳转菜单也就差一个onchange这个函数。
以下是这个菜单的代码,由于循环跟判断相对上面来说复杂一些,大伙要看清楚一点哦。
<select name="second">
<%if rs.eof or rs.bof then
response.write ("<option>--------</option>")
else
if request.querystring("sec") = "" then   '获取跳转之后的sec值
   temp=rs(0)   如果为空,就把temp的值设为第一条记录的值
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>")
  '如果没有记录,则在这个列表中显示"-----"
else
 while not(subrs.eof or subrs.bof)'否则就用循环列出一切符合条件的记录。
   response.write ("<option value=" & subrs(0) & ">" & subrs(0) & "</option>")
 subrs.movenext
 wend
end if
end if

'关闭所有的记录集
subrs.close
set subrs = nothing
rs.close
set rs = nothing
conn.close
set conn = nothing
%>
</select>


到现在为止,已经将这个二级菜单的制过程做完了,很简单的一个看把我给说的。
大家看不懂再说吧,反正我已经不知道该怎么说了。
高手们不吝赐教啊。。。
网博士二级栏目下拉菜单 [插件用途] 主栏目+二级栏目下拉菜单扩展插件是将后台所设置的主菜单和二级菜单,以下拉式二级菜单的形式实现. 如下图: [安装方法] 本插件适合运营商帮客户定制模版时使用. 将module/ExpXMenu.php 传到module目录. 将templates/defatlt/tpl_exd_xmenu.htm 传到网站当前使用的模版目录. 修改全页模版,去掉原来的栏目菜单插件标签部分,换上标签. 立即下载

相关推荐

asp.net 动态装入菜单项源码

动态装入菜单项源码! 很值得下载看看!资源免费,大家分享!!

DW制做动态二级关联菜单

DW制做动态二级关联菜单 一。在head里放入下面的代码父表:id, 厂区,厂区代号 子表,ID, 部门,厂区代号 1 A厂 1 1 PMC ...

conglei5110的博客 679

ASP+ACCESS动态二级树形产品导航菜单(黄生原创作品)

ASP+ACCESS动态二级树形产品导航菜单(黄生原创作品)

[原创]DW4:导航二级菜单的制作方…

DW4取消了“显示弹出菜单”,使很多朋友在制作二级菜单的时候不知道什么简单办法了,我研究了一段了时间,以下代码可行,在IE8/FIREFOX/IE6的浏览器下测试可行,HTML代码和CSS代码分别保存。 该代码只使用了onmouseover、onmouseout两个js代码,简单易用,不用手工编写,直接在DW里面,选中主导航的某个菜单(比如“新闻”),按F9(标签检查器),再...

thewebcode 2575

dreamweaver随记---动态菜单--即鼠标放到菜单上时显示出下面的菜单项

1.菜单和菜单项都得用ap div 2.让菜单项和菜单的ap div 有交集,这样当鼠标离开菜单到菜单项时,菜单项就不会消失了,

bzuld的专栏 3811

DW+ASP 玩转动态二级菜单 (转)

DW+ASP 玩转动态二级菜单 (转)[@more@]本人比较B,不懂得怎么样用视频来解决,只好用我这个让人糊里糊涂的话来写了。一般情况下这种情况是来对二级的目录有用,对于现在网站流传的JS好多种,但都无外乎那些令像我这样的菜鸟...

cuibeng3549的博客 204

ASP技巧(1)

 如何保护网站安全,防止FSO破坏最简单版C#连接ACCESS中文的无组件文件上传ASP函数一个利用adsi得到局域网信息的asp文件根据需要动态include不同的文件让自定义文件下载支持断点续传用数组实现数据记录的批量录入方法上传的进度条 实时反映上传情况用ASP动态生成JavaScript的表单验证代码[图文] 在线实时开通WEB及FTP源程序经典的分页完整程序+注释ASP网站远程客户实现E

rzwince2的专栏 777

ASP二级联运菜单

用的表是ACCESS的,所以建表就不说了,只列出这个两个表的相应的字段名(数据库名:db.mdb):表名:type_tree ——父类字段:type_id(自动编号) type_name(类别名称)表名:s_type   ——子类字段:id(自动编号) s_name(子类别名称) type_id(父类ID)——与父类表相对应现在是建立数据库连接:Dim conn, connStrSet con

timz1的专栏 640

网页制作基础大三dw作业 基于HTML+CSS+JavaScript新能源汽车租赁(6个页面)

🥇 关于作者: 💬历任研发工程师,技术组长,教学总监;曾于2016年、2020年两度荣获CSDN年度十大博客之星。 十载寒冰,难凉热血;多年过去,历经变迁,物是人非。 然而,对于技术的探索和追求从未停歇。 💪坚持原创,热衷分享,初心未改,继往开来!🚗汽车网站、🚘汽车介绍、🚍汽车官网、汽车租赁、企业网页 、等网站的设计与制作。🏷️ 此作品为学生汽车网页设计题材,HTML+CSS 布局制作,web前端期末大作业,大学生网页设计作业源码,这是一个不错的网页制作,画面精明,代码为简单学生水平, 非常

专注于dreamweaver网页设计制作 329

动态数据库读取菜单(ASP.NET版)

这几天一直打算做个从数据读取导航菜单的效果,以前做的时候都是写死的(太死了),好了话不多说,先看效果! 我是个小菜,高手请不要喷!我在网上查了好久,说用menu控件,但是我用了不太好!最后我决定用repeater的嵌套来实现这个效果。先数据库结构吧! 前台的代码: 1 <body> 2 <form id="form1" runat="server"...

weixin_30537391的博客 228

asp.net下论坛中动态菜单的编程(C#)

在VS2008前台中加入MEnu控制,设置属性代码如下: &lt;asp:Menu ID="Menu1" runat="server" Orientation="Horizontal" DynamicEnableDefaultPopOutImage="False" DynamicVerticalOffset="10" Height="24px" Width="126p

web开发自学 378

ASP二级联动菜单制作

一个简单的二级联动菜单制作。用来点击省后显示相应的县市。         具体做法如下:         1.设计数据库         我们选用sql2000数据库。先建个数据库或者用已经有的数据库。然后在数据库中建立两个表分别为province、city。具体字段设计如下:         Province(省)         具体字段: id—自动编号 ProvinceName—

php菜鸟技术天地 3843

antd-select下拉框同时获取所选值id和名字属性

1、预期实现 需要得到id和name的值 然后传入接口 2、给当前的选择框绑定回调事件 一般我们需要获取一个值得时候是这样写 changeGoodsName = (value) => { this.setState({ goodsId: value }) } 而现在需要两个值 changeGoodsName = (value, e) =&...

WebView 9276

three js 9 补间动画tween

如果使用了yoyo的动画,且没有加delay,会有如下问题。AI给的解释为这是已知的bug。1 加上一个极短的delay。2 改用两个动画相互调用。

吴梓穆的博客 39
上一篇: ASP用JMail、CDO发送邮件
下一篇: ASP 中 Split 函数的实例
青蛙
博客等级 码龄24年 4粉丝 3原创
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值