• 软件测试技术
  • 软件测试博客
  • 软件测试视频
  • 开源软件测试技术
  • 软件测试论坛
  • 软件测试沙龙
  • 软件测试资料下载
  • 软件测试杂志
  • 软件测试人才招聘
    暂时没有公告

字号: | 推荐给好友 上一篇 | 下一篇

DW+ASP 玩转动态二级菜单

发布: 2007-6-30 18:56 | 作者: admin | 来源: | 查看: 16次 | 进入软件测试论坛讨论

领测软件测试网 本人比较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

文章来源于领测软件测试网 https://www.ltesting.net/


关于领测软件测试网 | 领测软件测试网合作伙伴 | 广告服务 | 投稿指南 | 联系我们 | 网站地图 | 友情链接
版权所有(C) 2003-2010 TestAge(领测软件测试网)|领测国际科技(北京)有限公司|软件测试工程师培训网 All Rights Reserved
北京市海淀区中关村南大街9号北京理工科技大厦1402室 京ICP备10010545号-5
技术支持和业务联系:info@testage.com.cn 电话:010-51297073

软件测试 | 领测国际ISTQBISTQB官网TMMiTMMi认证国际软件测试工程师认证领测软件测试网