Die unendliche Klassifizierung von ASP plus Beispielcode für die JS-Funktion zum Verkleinern und Dehnen
In diesem Beispiel werden hauptsächlich die Funktionen der unbegrenzten Klassifizierung mit ASP und des Schrumpfens und Streckens mit JS kurz vorgestellt.
Vor der Operation habe ich eine Klassifizierungstabellenkategorie definiert, deren Felder sind
id (automatische Nummer) cat_name (Kategoriename) parent_id (übergeordnete ID, entsprechend der ID dieser Tabelle) cat_order (Reihenfolge) is_show (ob angezeigt werden soll) u_id (dies wird verwendet, um zu unterscheiden, ob es sich um eine Nachrichtenkategorie oder eine Produktkategorie handelt , oder andere Kategorien), der Einfachheit halber habe ich alle diese Kategorien in dieser Tabelle aufgeführt.
Beim Hinzufügen von Kategorien zu Kunden wurden zu viele Kategorien angezeigt. Bei der ursprünglichen Anzeige an der Rezeption wurden alle angezeigt, was sehr lang war. Der Kunde hat Änderungsvorschläge gemacht und verlangt, dass diese geändert werden, indem er auf die große Kategorie klickt, damit ihre Unterkategorien angezeigt werden können. Unter jeder Kategorie befindet sich außerdem eine gepunktete Linie und vor der großen Kategorie befindet sich ein Bild-Pluszeichen. was nach der Erweiterung zu einem Minuszeichen werden sollte.
<Skript>
Funktion fd(id,num)
{
t=$(c+id+_1).style.display;
if(t==none)
{
t1=Block;
t2=images/fll_34.gif;
}
anders
{
t1=keine;
t2=images/fll_34.gif;
}
for(i=1;i<=num;i++)
{
$(c+id+_+i).style.display=t1;
$(d_+id).src=t2;
}
}
Funktion $(id)
{
return document.getElementById(id);
}
</script>
Dies ist der ASP-Kategoriecode für die unbegrenzte Anzeige und fügt diesen Kategorien IDs hinzu
<%
'Funktion: ASP unbegrenzte Anzeigeklassifizierung + JS anzeigen und ausblenden
'Autor: wangsdong
'Entwicklung: www.aspprogram.cn
'Parameter: parent_id ist die übergeordnete ID, stype sind Nachrichten, Produkte und Artikelkategorien
„Originalartikel, bitte bewahren Sie beim Nachdruck einige Informationen auf, vielen Dank.“
Funktion cat111(parent_id,stype)
set rs1 =server.createobject(adodb.recordset)
sql=select cat_name,cat_id,parent_id aus der Kategorie, wobei parent_id=&parent_id& und u_id=&stype& und is_show=1 order by cat_order asc
set rs1=conn.execute(sql)
Wenn rs1.eof Dann
Anders
if(depath>2) then
display2=keine
anders
display2=block
Ende wenn
dim j
j=1
tun, während nicht rs1.eof
cat_name1 = rs1(cat_name)
cat_id1 = rs1(cat_id)
parent_id1=rs1(parent_id)
„******************Das Folgende ist das ******************, das Sie anzeigen möchten.“
m9=0
sql2=wählen Sie count(cat_id) als t aus der Kategorie aus, wobei parent_id=&cat_id1& und u_id=&stype&
set rs2=server.createobject(adodb.recordset)
set rs2=conn.execute(sql2)
Wenn nicht rs2.eof, dann
m9=rs2(t)
anders
m9=0
Ende wenn
rs2.close
if(depath<=2) then
mgif=images/-.gif
a=Block
anders
if(m9>0) dann
mgif=images/+.gif
anders
mgif=images/-.gif
Ende wenn
if(depath=4) then
a=Block
anders
a=keine
Ende wenn
Ende wenn
catstr=catstr & <tr id=c&parent_id&_&j& style=display:&a&><td width=25 align=center valign=middle class=dotted_class><img src=&mgif& width=12 height=11 id=d_&cat_id1&></td>< td class=dotted_class leftcatcss>
if(m9>0) dann
catstr=catstr&<a href=javascript:void(0); _fcksavedurl=javascript:void(0);fd(&cat_id1&,&m9&)> &vbnewline
anders
catstr=catstr&<a href=products.asp?id=&cat_id1& target=_blank>&vbnewline
Ende wenn
für i=1 bis depath
catstr=catstr&
Nächste
catstr=catstr&cat_name1&</a></td></tr>&vbnewline
m9=0
sql2=wählen Sie cat_name,cat_id aus der Kategorie aus, wobei parent_id=&parent_id1& und u_id=&stype& nach cat_order aufsteigend sortiert sind
set rs2=server.createobject(adodb.recordset)
set rs2=conn.execute(sql2)
Wenn nicht rs2.eof, dann
depath=depath+4
Rufen Sie cat111(cat_id1,stype) auf
Ende wenn
rs2.close
setze rs2=nichts
depath=depath-4
„******************Das Obige ist das ******************, das Sie anzeigen möchten.“
j=j+1
rs1.movenext
Schleife
Ende wenn
rs1.close
setze rs1=nichts
end Funktion
%>
Bevor Sie diese Funktion verwenden, fügen Sie hinzu
catstr=
Rufen Sie dann erneut auf und fügen Sie die folgende gepunktete Linie zu dotted_class in CSS hinzu
Alle Funktionen wurden bis hierhin implementiert