在线
客服

在线客服
尊敬的客户,我们24小时竭诚为您服务 公司总机: 0755-83312037 (32条线)

客服
热线

0755-83312037 (32条线)
7*24小时客服服务热线

?

关注
微信

关注官方微信
TOP

返回
顶部

ASP实例教程:asp无限级显示分类代码

发布时间:2019-04-13浏览次数:1058 <p> </p> <table style="BORDER-RIGHT: #cccccc 1px dotted; TABLE-LAYOUT: fixed; BORDER-TOP: #cccccc 1px dotted; BORDER-LEFT: #cccccc 1px dotted; BORDER-BOTTOM: #cccccc 1px dotted" cellspacing="0" cellpadding="6" width="95%" align="center" border="0"><tbody><tr> <td style="WORD-WRAP: break-word" bgcolor="#fdfddf"> <font color="#ff0000">WebjxCom提示:</font><font color="#000000">asp无限级分类加js收缩伸展功能代码.</font> </td> </tr></tbody></table> 为了方便使用分类,我定义了一个分类表category,里面字段是<br>id(自动编号)&#160; cat_name(分类名) parent_id(父ID,对应本表ID) cat_order(顺序) is_show(是否显示) &#160;u_id(这个用来区别是新闻分类,还是产品分类,还是其他分类),为了方便,我将这些分类全部放在这张表中。<br>在给客户添加分类的时候,结果有太多的分类,本来前台显示的时候,将它们全部显示出来了,好长。客户提出修改意见,要求将它们改成点击大分类,才可以将其子分类显示出来,并且每个分类下面还有一条虚线,并且大分类前面有个图片加号,展开后要变成减号。<br>&lt;script&gt;<br>function fd(id,num)<br>{<br>&#160;t=$("c"+id+"_1").style.display;<br>&#160;<br>&#160;if(t=="none")<br>&#160;{<br>&#160;&#160; t1="block";<br>&#160;&#160; t2="images/fll_34.gif";<br>&#160;}<br>&#160;else <br>&#160;{<br>&#160;&#160;t1="none";&#160;<br>&#160;&#160;t2="images/fll_34.gif";<br>&#160;}<br>&#160;for(i=1;i&lt;=num;i++)<br>&#160;{<br>&#160;&#160;$("c"+id+"_"+i).style.display=t1;<br>&#160;&#160;$("d_"+id).src=t2;&#160;&#160;<br>&#160;}<br>}<br>function $(id)<br>{<br>&#160;return document.getElementById(id);<br>}<br>&lt;/script&gt;<br>这是asp无限级显示分类代码,并给这些分类加上id<br><br>&lt;%<br>'功能:asp无限级显示分类+js显示与隐藏<br>'参数:parent_id为父ID,stype为新闻,产品,文章大分类<br>'原创文章,转载请保留些信息,谢谢<br>function cat111(parent_id,stype)<br>set rs1&#160;=server.createobject("adodb.recordset")<br>sql="select cat_name,cat_id,parent_id from category where parent_id="&amp;parent_id&amp;" and u_id="&amp;stype&amp;" and is_show=1 order by cat_order asc"<br>set rs1=conn.execute(sql)<br>If rs1.eof Then<br>Else&#160;<br>if(depath&gt;2) then<br>&#160;display2="none"&#160;&#160;&#160;&#160;&#160;<br>else<br>&#160;display2="block"&#160;<br>end if&#160;&#160;<br>dim j<br>j=1<br>do while not rs1.eof&#160;<br>&#160;cat_name1 = rs1("cat_name")<br>&#160;cat_id1 = rs1("cat_id")&#160;&#160;<br>&#160;parent_id1=rs1("parent_id")&#160;<br>&#160;'******************下面是你要显示的******************'&#160;<br>&#160;m9=0<br>&#160;sql2="select count(cat_id) as t from category where parent_id="&amp;cat_id1&amp;" and u_id="&amp;stype&amp;""&#160;&#160;&#160;&#160;<br>&#160;set rs2=server.createobject("adodb.recordset")<br>&#160;set rs2=conn.execute(sql2)&#160;<br>&#160;if not rs2.eof then<br>&#160;&#160;&#160; m9=rs2("t")<br>&#160;else<br>&#160;&#160;m9=0&#160;&#160;<br>&#160;end if&#160;<br>&#160;rs2.close<br>&#160;&#160;<br>&#160;if(depath&lt;=2) then&#160;&#160;<br>&#160;&#160;mgif="images/-.gif"<br>&#160;&#160;a="block"<br>&#160;else<br>&#160;&#160;if(m9&gt;0) then&#160;<br>&#160;&#160;mgif="images/+.gif"&#160;<br>&#160;&#160;else<br>&#160;&#160;mgif="images/-.gif"<br>&#160;&#160;end if<br>&#160;&#160;if(depath=4) then<br>&#160;&#160;&#160;a="block"<br>&#160;&#160;else&#160;&#160;<br>&#160;&#160;&#160;a="none"<br>&#160;&#160;end if<br>&#160;end if&#160;&#160;<br>&#160;<br>&#160;<br>&#160;catstr=catstr &amp; "&lt;tr id=""c"&amp;parent_id&amp;"_"&amp;j&amp;""" style=""display:"&amp;a&amp;"""&gt;&lt;td width=""25"" align=""center"" valign=""middle"" class=""dotted_class""&gt;&lt;img src="""&amp;mgif&amp;""" width=""12"" height=""11"" id=""d_"&amp;cat_id1&amp;"""&gt;&lt;/td&gt;&lt;td class=""dotted_class leftcatcss""&gt;"<br>&#160;if(m9&gt;0) then<br>&#160;&#160;catstr=catstr&amp;"&lt;a href=""javascript:void(0);"" _fcksavedurl="""javascript:void(0);""" _fcksavedurl="""javascript:void(0);""" onclick=""fd("&amp;cat_id1&amp;","&amp;m9&amp;")""&gt;"&#160;&amp;vbnewline<br>&#160;else<br>&#160;&#160;catstr=catstr&amp;"&lt;a href=""products.asp?id="&amp;cat_id1&amp;""" target=""_blank""&gt;"&amp;vbnewline<br>&#160;end if<br>&#160;for i=1 to depath<br>&#160;&#160; catstr=catstr&amp;"&amp;nbsp;"<br>&#160;Next<br>&#160;catstr=catstr&amp;cat_name1&amp;"&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;"&amp;vbnewline<br>&#160;m9=0<br>&#160;&#160;&#160;&#160;&#160;<br>&#160;sql2="select cat_name,cat_id from category where parent_id="&amp;parent_id1&amp;" and u_id="&amp;stype&amp;" order by cat_order asc"&#160;&#160;&#160;&#160;<br>&#160;set rs2=server.createobject("adodb.recordset")<br>&#160;set rs2=conn.execute(sql2)<br>&#160;if not rs2.eof then<br>&#160;&#160;&#160; depath=depath+4&#160; <br>&#160;&#160;&#160; call cat111(cat_id1,stype)<br>&#160;end if<br>&#160;rs2.close&#160;<br>&#160;set rs2=nothing&#160;<br>&#160;depath=depath-4&#160;<br>&#160;'******************上面是你要显示的******************'<br>&#160;j=j+1<br>rs1.movenext<br>loop<br>End If<br>rs1.close<br>set rs1=nothing<br>end Function<br>%&gt;<br>在使用这个函数之前加上<br>catstr=""<br>然后再call,下面的虚线加在css中的dotted_class里面,这样就搞定了。<br>注意:这里得到的是一个表格的行,要和其他行放在一起,不要加到td里面去了。