HTMLWorld - HTML, CSS, JavaScript, PHP, Java, Flash und vieles mehrHTMLWorld:   Home | Impressum
 

 
 

Anzeige 
 
HTMLWorld » Forum

Thema anzeigen - mit xsl eine tabelle erstellen spalten/zeilenanzahl variable

 FAQFAQ   SuchenSuchen   MitgliederlisteMitgliederliste   BenutzergruppenBenutzergruppen   RegistrierenRegistrieren 
 ProfilProfil   Einloggen, um private Nachrichten zu lesenEinloggen, um private Nachrichten zu lesen   LoginLogin 

mit xsl eine tabelle erstellen spalten/zeilenanzahl variable

 

Neues Thema eröffnen   Neue Antwort erstellen    HTMLWorld Foren-Übersicht
   XSL, XSLT, XPath, XLink, XPointer, X...
Vorheriges Thema:
Nächstes Thema:  
Autor Nachricht
fee



Anmeldungsdatum: 06.02.2007
Beiträge: 2

BeitragVerfasst am: 06.02.2007 18:24:26    Titel: mit xsl eine tabelle erstellen spalten/zeilenanzahl variable Antworten mit Zitat

Hallo,
Ich wollte meine xml datei mit xsl in html umwandeln und damit eine tabelle erstellen.

Die datei sieht etwa so aus:
<?xml version="1.0" encoding="UTF-8"?>
<queryResult>
<field>
<fieldName>Name</fieldName>
<value>Polar-</value>
<value>Protein-</value>
<value>Oligopeptide-</value>
<value>Manganese</value>
</field>
<field>
<fieldName>Description</fieldName>
<value>test1</value>
<value>test2</value>
</field>
<field>
</queryResult>

Kann ich es irgendwie hinbekommen, dass die anzahl der fields, die anzahl der spalten angibt, mit fieldName als überschrift und die values unterhalb des dazugehörigen fieldNamens?

Vielen Dank schonmal

Anja
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
admin
Site Admin


Anmeldungsdatum: 16.01.2005
Beiträge: 323
Wohnort: Berlin

BeitragVerfasst am: 11.02.2007 14:15:30    Titel: Antworten mit Zitat

Zitat:
Kann ich es irgendwie hinbekommen, dass die anzahl der fields, die anzahl der spalten angibt, mit fieldName als überschrift und die values unterhalb des dazugehörigen fieldNamens?

Deine Datei sieht doch schon fast aus wie eine HTML-Tabelle. Du brauchst doch jetzt nur noch <field> in <tr>, <fieldName> in <th> und <value> in <td> umwandeln und hast eine einigermaßen saubere HTML-Tabelle (sieht man mal davon ab dass Zeile 1 dann mehr Zellen hätte als Zeile 2).
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden Website dieses Benutzers besuchen MSN Messenger
fee



Anmeldungsdatum: 06.02.2007
Beiträge: 2

BeitragVerfasst am: 13.02.2007 13:54:54    Titel: Antworten mit Zitat

Hey,

vielen Dank für die Antwort, aber dass ist nicht ganz das was ich meinte.
In dem obrigen Fall hätte ich gerne 2 Spalten, und dann halt unterschiedlich viele Zeilen...
Hatte gedacht, dass ich eventl. mehrere Tabellen mache und die dann nebeneinander schreibe?
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Younes
Forumsteilnehmer


Anmeldungsdatum: 04.09.2007
Beiträge: 7
Wohnort: Dortmund

BeitragVerfasst am: 04.09.2007 00:36:23    Titel: Antworten mit Zitat

Hallo erste mal,
bin neu hier Razz

also ich habe eine Antwort:
ja ich kann dir einpaar stichwörter geben:
tabelen neben Einander : benutzmal CSS: float: left
alle Elemente "value" auszugeben : <xsl:for-each...>


ich versuche das mal zukriegen und ich werde gleich dir antwort posten.

Smile
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Younes
Forumsteilnehmer


Anmeldungsdatum: 04.09.2007
Beiträge: 7
Wohnort: Dortmund

BeitragVerfasst am: 04.09.2007 00:45:11    Titel: Antworten mit Zitat

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>Test</title>
   </head>
   <body>
   
   <table>
      <xsl:for-each select="queryResult/field" >
         <table border="1" style="float:left;">
               <tr>
                  <th><xsl:value-of select="fieldName"/></th>
               </tr>
               <td>
                  <xsl:for-each select="value">
                     <tr>
                        <td><xsl:value-of select="."/></td>
                     </tr>
                  </xsl:for-each>
               </td>
                  
         </table>         
      </xsl:for-each>
   </table>

   </body>
</html>
</xsl:template>

</xsl:stylesheet>


Und so siet das aus:

Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Beiträge der letzten Zeit anzeigen:   
Neues Thema eröffnen   Neue Antwort erstellen    HTMLWorld Foren-Übersicht
   XSL, XSLT, XPath, XLink, XPointer, X...
Alle Zeiten sind GMT + 1 Stunde
Seite 1 von 1

 
Gehe zu:  
Du kannst keine Beiträge in dieses Forum schreiben.
Du kannst auf Beiträge in diesem Forum nicht antworten.
Du kannst deine Beiträge in diesem Forum nicht bearbeiten.
Du kannst deine Beiträge in diesem Forum nicht löschen.
Du kannst an Umfragen in diesem Forum nicht mitmachen.