• Jetzt anmelden. Es dauert nur 2 Minuten und ist kostenlos!

Ausgabe in ausklappbaren Fenster

Logi87

Neues Mitglied
Hallo,

ich arbeite gerade daran mittels XSLT aus einem XML-Dokument ein HTML-Dokument zu erzeugen.

Gibt es eine Möglichkeit eine Ausgabe so zu erzeugen, dass sie standardmäßig ausgeblendet
ist und nur durch Klick auf einen Button angezeigt wird? So wie es manchmal in Foren gemacht wird
um Spoiler zu verstecken. (vll in so einer Art Ausroll / Ausklappfenster)

Ich habe schonmal gegoogelt aber ich bin nicht weitergekommen.
Unterm Strich soll die gesamte Tabelle versteckt werden.

Code:
<?xml version="1.0" encoding="UTF-8"?>
 <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
     

<xsl:template match="/">
<html>
    <head>
        <title>  </title>
    </head>
  
 
    <body>
        <TABLE border="8" cellspacing="10" cellpadding="10">
        <caption align="center"><h1><text> [ testing properties ] </text></h1></caption>
            <TH><h2>[ property ]</h2></TH>
            <TH><h2>[ value ]</h2></TH>
            
            
            <xsl:if test="@value != ''">
                <TR>
                    <TD align = "center" width="200">
                        <xsl:value-of select="@name"/>     
                    </TD>
                    <TD width="600">
                        <xsl:value-of select="@value"/>                                 
                    </TD>                    

                </TR>
            </xsl:if>    
                
            </xsl:for-each>
        </TABLE>
     </body>
</html>
</xsl:template>
</xsl:stylesheet>



Hoffe mir kann jemand helfen, komm echt nicht weiter mit dem Problem.



Grüße
 
done - hat sich erledigt
Habe dann anstatt collapse und hidden auf 'block' und 'none' umgestellt und
dann hat es funktioniert.
----------------------------------------------------------------------------------------


Danke das hat erstmal geholfen :)

jedoch habe ich noch ein Problem mit dem "collapse". Ih möchte das die Tabelle standardmäßig als "collapse" behandelt
wird und nur bei Klick "visible" wird. Kann jemand den Fehler finden? Es wird bei mir immer als "hidden" dargestellt und das
will ich eigentlich nicht. Danke schonmal.

Code:
<?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">


  
   
<xsl:template match="/">

<html>
    <head>
        <title>  </title>

      
    <script type="text/javascript">
       function on ()
       {
       if (document.getElementById)
       document.getElementById("Tabelle").style.display='block';
       }
     </script>
     <script type="text/javascript">
       function off ()
       {
       if (document.getElementById)
       document.getElementById("Tabelle").style.display='none';
       }
     </script>
  
    </head>

    <body>
    <input name="properties_on_button" Type="button" value="show properties" onClick="javascript:on()"/>
     <input name="properties_off_button" type="button" value="hide properties" onClick="javascript:off()"/>

   

     <TABLE border="8" cellspacing="10" cellpadding="10"  id="Tabelle" style="display:none">
       


        <caption align="center"><h2><text> [ testing properties ] </text></h2></caption>
            <TH><h3>[ property ]</h3></TH>
            <TH><h3>[ value ]</h3></TH>
          
            <xsl:for-each select="//property[@name != 'java.class.path']" >          
            <xsl:if test="@value != ''">

  
                <TR>
                    <TD align = "center" width="200">
                        <xsl:value-of select="@name"/>   
                    </TD>
                    <TD width="600">
                    <xsl:if test="@value = ' '">
                        <text> [whitespace] </text>
                    </xsl:if>  
                    <otherwise>
                        <xsl:value-of select="@value"/>                               
                    </otherwise>
                    </TD>                  

                </TR>
            </xsl:if>  
              
            </xsl:for-each>
        </TABLE>
   

    </body>
</html>



</xsl:template>
</xsl:stylesheet>
 
Zuletzt bearbeitet:
Zurück
Oben