| 编程中国 | 业界新闻 | 技术文章 | 视频教程 | 下载频道 | 程序源码 | 个人空间 | 编程论坛
全能ASP/PHP/ASP.NET主机,支持月付专业 MSSQL 数据库空间,支持月付专业 MySQL 数据库空间,支持月付买域名,送MP3、MP4
高端软件开发 = 年薪十万不是梦赛孚耐:软件保护加密专家身份认证令牌USB KEY买空间,免费送域名(厦门中资源)
共有 360 人关注过本帖
标题:自动生成二级联动菜单得问题
收藏  订阅  推荐  打印 
cedar125
Rank: 1
等级:新手上路
帖子:3
积分:144
注册:2008-9-13
自动生成二级联动菜单得问题

我想写一个能自动生成二级联动菜单的函数,可是调试了很久都不行,所以拿出来让大家帮忙看看,感激不尽啊!
代码是这样的:
数据库名为exam
表名:section
字段一:section_id 自动增长的ID
字段二:section_name 即名称
字段三:parent_id 即该项的父ID(即所属ID)
字段四:type 类型(0表示一级菜单,1表示二级菜单)

<!--#include file="conn.asp" -->
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<title>二级联动菜单</title>
</head>
<!------------------------------------------------------------------------------------------------------->
<script language="javascript">
function createlist(oneclass,twoclass)
{  
   document.writeln("function changeone(locationid)");
   document.writeln("{document.two_list."&twoclass&".length=0;");
   document.writeln("document.two_list."&twoclass&".options[0]=new Option('==选择专业==','');");
   document.writeln("for(var i=0; i < ary.length ;i++)");
   document.writeln("{if(ary[i][0] == locationid)");
   document.writeln("{document.two_list."&twoclass&".options[document.two_list."&twoclass&".length]=new Option(ary[i][2],ary[i][1]);}");
   document.writeln("}}}");
   
   document.writeln("<select name="&oneclass&" onChange="changeone(this.value)"><option>==选择学院==</option>");
  
   <%set rs_1=server.CreateObject("adodb.recordset")
   sql_1="select * from section where type=0"
   rs_1.open sql_1,conn,1,1
   do while Not rs_1.eof %>
   document.writeln("response.Write "<option value="&rs_1("section_id")&">"&rs_1("section_name")&"</option>"");
   <%rs_1.movenext
   loop
   rs_1.close %>;
   document.writeln("</select><select name="twoclass"><option>==选择专业==</option></select>");
   
   <%set rs=server.CreateObject("adodb.recordset")
   sql="select * from section where type=1"
   rs.open sql,conn,1,1%>;
   document.writeln("var ary = new Array();");
   document.writeln("<%count=0%>");
   document.writeln("<% do while not rs.eof  %>");
   document.writeln("ary[<%=count%>]=new Array('<%=rs("parent_id")%>','<%=rs("section_id")%>','<%=rs("section_name")%>');");
   document.writeln("<% count=count + 1 %>");
   document.writeln("<%rs.movenext%>");
   document.writeln("<%loop%>");
   document.writeln("<%rs.close %>");
   document.writeln("conn.close");
   document.writeln("set conn=nothing");
      </script>
<body>
<form action="#" method="post" name="two_list">
<script language="javascript">
createlist("oneclass","twoclass");

</script>
</form>

</body>
</html>
搜索更多相关主题的帖子: 菜单  自动  
2008-9-14 11:46
cedar125
Rank: 1
等级:新手上路
帖子:3
积分:144
注册:2008-9-13

好荒凉....
2008-9-14 12:22
cedar125
Rank: 1
等级:新手上路
帖子:3
积分:144
注册:2008-9-13
哎....



[ 本帖最后由 cedar125 于 2008-9-15 13:52 编辑 ]
2008-9-14 16:39
渚薰
Rank: 12Rank: 12Rank: 12
等级:贵宾
威望:22
帖子:1132
积分:12338
注册:2006-8-6

求代码 改代码
当然荒凉

个人ajax技术专题站: http://www.ajaxgo.org 我不会闲你烦,只会闲你不够烦!
2008-9-16 08:44
关于我们 | 广告合作 | 编程中国 | 清除Cookies | Archiver | WAP | TOP

编程中国 版权所有,并保留所有权利。鲁ICP备08000592号
Powered by Discuz, Processed in 0.065126 second(s), 9 queries.
Copyright©2004-2008, BCCN.NET, All Rights Reserved