无级分类的多级联动

时间:2020-07-02 12:53:12 

这是个郁闷的问题。
主级获得ID列表 select ID from FS_SD_Address  where PID=0
次级select ID from FS_SD_Address where PID in(主级ID列表)
* select ID from FS_SD_Address where PID in(次级ID列表)
四级select ID from FS_SD_Address where PID in( * ID列表)
...........................
然后就是改造 * 联动为你想的级数,晕晕。

<% Option Explicit %>
<!--#i nclude file="../../FS_Inc/Const.asp" -->
<!--#i nclude file="../../FS_InterFace/MF_Function.asp" -->
<!--#i nclude file="../../FS_Inc/Function.asp" -->
<!--#i nclude file="../lib/strlib.asp" -->
< script language="JavaScript" > 
<!-- 
<% 
'二级数据保存到数组 
Dim count2,rsClass2,sqlClass2 
set rsClass2=server.createobject("adodb.recordset") 
sqlClass2="select * from FS_SD_Address" 
rsClass2.open sqlClass2,conn,1,1 
%> 
var subval2 = new Array(); 
//数组结构:一级根值,二级根值,二级显示值 
<% 
count2 = 0 
do while not rsClass2.eof 
%> 
subval2[<%=count2%>] = new Array('<%=rsClass2("aID")%>','<%=rsClass2("ID")%>','<%=rsClass2("Name")%>') 
<% 
count2 = count2 + 1 
rsClass2.movenext 
loop 
rsClass2.close 
%> 
<% 
' * 数据保存到数组 
Dim count3,rsClass3,sqlClass3 
set rsClass3=server.createobject("adodb.recordset") 
sqlClass3="select * from aaa" 
rsClass3.open sqlClass3,conn,1,1 
%> 
var subval3 = new Array(); 
//数组结构:二级根值, * 根值, * 显示值 
<% 
count3 = 0 
do while not rsClass3.eof 
%> 
subval3[<%=count3%>] = new Array('<%=rsClass3("aaID")%>','<%=rsClass3("ID")%>','<%=rsClass3("Name")%>') 
<% 
count3 = count3 + 1 
rsClass3.movenext 
loop 
rsClass3.close 
%> 
function changeselect1(locationid) 

      document.form1.s2.length = 0; 
      document.form1.s2.options[0] = new Option('==请选择类别==',''); 
      document.form1.s3.length = 0; 
      document.form1.s3.options[0] = new Option('==请选择专题==',''); 
      for (i=0; i<subval2.length; i++) 
      { 
          if (subval2[i][0] == locationid) 
          {document.form1.s2.options[document.form1.s2.length] = new Option(subval2[i][2],subval2[i][1]);} 
      } 

function changeselect2(locationid) 

      document.form1.s3.length = 0; 
      document.form1.s3.options[0] = new Option('==请选择专题==',''); 
      for (i=0; i<subval3.length; i++) 
      { 
          if (subval3[i][0] == locationid) 
          {document.form1.s3.options[document.form1.s3.length] = new Option(subval3[i][2],subval3[i][1]);} 
      } 

//--> 
< /script > 
<form name="form1" method="post" action="test1.asp"> 

* 联动:

<% 
Dim count1,rsClass1,sqlClass1 
set rsClass1=server.createobject("adodb.recordset") 
sqlClass1="select * from FS_SD_Address" 
rsClass1.open sqlClass1,conn,1,1 
%> 
<select name="s1" onChange="changeselect1(this.value)"> 
<option>==请选择频道==</option> 
<% 
count1 = 0 
do while not rsClass1.eof 
response.write"<option value="&rsClass1("ID")&">"&rsClass1("Name")&"</option>" 
count1 = count1 + 1 
rsClass1.movenext 
loop 
rsClass1.close 
%> 
</select> 
<select name="s2"    onChange="changeselect2(this.value)"> 
<option>==请选择类别==</option> 
</select> 
<select name="s3"> 
<option>==请选择专题==</option> 
</select> 
<input type="submit" name="Submit" value="提交"></form> 
<!--  * 联动菜单 结束 -->

标签:分类,联动,菜单
0
投稿

猜你喜欢

  • oracle初始化参数设置

    2010-07-31 12:47:00
  • centos 安装mysql中遇到问题的解决办法

    2010-12-14 15:11:00
  • HTML 表格特效整理

    2023-06-25 22:31:01
  • 如何把图片上传到数据库中并显示出来?

    2009-11-06 13:50:00
  • numpy创建神经网络框架

    2023-07-10 22:17:50
  • ORACLE客户端连接服务器的注意事项

    2007-08-17 09:57:00
  • MySQL表设计优化与索引 (七)

    2010-10-25 20:06:00
  • ASP连接Oracle数据库的例子

    2007-10-02 12:44:00
  • JavaScript基础知识篇-你真的了解JavaScript吗?

    2009-09-17 13:00:00
  • 搜索结果页(SERP):前言

    2009-07-22 20:56:00
  • css设计小巧三条

    2008-01-21 13:04:00
  • 三种禁用FileSystemObject组件的方法

    2007-09-23 15:52:00
  • JS求1到任意数之间的所有质数的方法详解

    2023-06-28 11:46:06
  • 《色彩解答》系列之三 色彩对比

    2008-02-17 14:40:00
  • 有感用户体验规划与系统实现

    2009-11-27 18:33:00
  • SQL Server 总结复习(一)

    2012-10-07 11:04:02
  • 实例解析:MySQL 实例管理器识别的命令

    2009-02-23 17:33:00
  • sql 查询记录数结果集某个区间内记录

    2023-07-09 08:25:01
  • 认识Javascript数组

    2009-08-27 15:26:00
  • ASP XML编程objXML.async = False

    2011-04-21 10:55:00
  • asp之家 网络编程 m.aspxhome.com