Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 14
  1. #1

    [xml] elementi ripetuti su colonne e righe

    Ciao!

    Sto usando Dreamweaver e XML per fare una pagina in cui c'è una tabella con circa 40 elementi ripetuti, con miniatura immagine e descrizione.

    Non riesco a fare in modo che ogni 4 elementi ripetuti, vada A CAPO:
    vorrei le miniature su 4 colonne e tante righe quante servono.

    Chiaramente riesco solo a metterle tutte una sotto l'altra (una colonna) oppure sulla stessa riga (che continua verso destra, uscendo dalla pagina... )

    codice:
    <table ...>
      <tr>
        <xsl:for-each select="specials/menu_item">
          <td ...>                  
                  [img]{img_small}[/img]
    	      <xsl:value-of select="description"/>
          </td>
        </xsl:for-each>
        <td ...> </td>
        <td ...> </td>
        <td ...> </td>
       </tr>
    </table>

    Qualcuno sa come posso fare 4 colonne? :master:
    LuPooh - Grafica multimediale

  2. #2
    al volo mi viene im mente di usare la funzione di xpath position() e giocarci un po' su con un if

    tipo se la divisione fra position e 4 non da 0 di resto allora fai una tr....

    questa l'idea, ora devo uscire, magari poi ne parliamo meglio

  3. #3
    ...come idea mi sembra buona!

    Resto in attesa di delucidazioni su come farlo! :master:

    Grazie,
    LuPooh - Grafica multimediale

  4. #4
    Utente di HTML.it L'avatar di salasir
    Registrato dal
    Apr 2004
    Messaggi
    1,887
    Tempo fa avevo aperto un 3D su un argomento simile. Prova a darci un'occhiata. Il mio problema era selezionare e sortare gli elementi prima di esporli, ma la visualizzazione semplice funziona.
    http://forum.html.it/forum/showthrea...elle+dinamiche

  5. #5
    Utente di HTML.it L'avatar di Polley
    Registrato dal
    Jan 2005
    Messaggi
    696
    MOD

  6. #6
    Ho cambiato questa mia riga di codice:

    codice:
    <xsl:for-each select="specials/menu_item[(position()-1) mod 4 = 0]">

    ma mi mostra solo l'elemento 1 e 5 (su 6 inseriti)...

    Devo cambiare qualcos'altro?
    LuPooh - Grafica multimediale

  7. #7
    ...ok, scusate, non avevo capito come usare il codice...

    Però non so implementare un "if" in xml... Come si fa?

    codice:
    <table ...>
      <tr>
        <xsl:for-each select="specials/menu_item"> 
           <if "specials/menu_item[(position()-1) mod 4 = 0]">
           {
             <tr>
               <td ...>                  
                  [img]{img_small}[/img]
    	      <xsl:value-of select="description"/>
               </td>
               </xsl:for-each>
               <td ...> </td>
               <td ...> </td>
               <td ...> </td>
             </tr>
           }
          <td ...>                  
             [img]{img_small}[/img]
    	 <xsl:value-of select="description"/>
          </td>
          </xsl:for-each>
          <td ...> </td>
          <td ...> </td>
          <td ...> </td>
       </tr>
    </table>
    LuPooh - Grafica multimediale

  8. #8
    per fare un if fai:

    <xsl:if test="expression">
    ...
    ...some output if the expression is true...
    ...
    </xsl:if>


    trovi questo e molto di più sulla guida del w3

    fammi sapere..

  9. #9
    Come si usa il "match"?

    ...mi dà questo errore:


    Attributo "match" non valido su "xsl:if".



    codice:
     
    
    <xsl:template match="/specials/menu_item">
    
    
    <xsl:if match="specials/menu_item[(position()-1) mod 4 = 0]">
    ...se non lo uso mi dà comunque errore...
    LuPooh - Grafica multimediale

  10. #10
    ma infatti ho scritto TEST non match,
    controlla l'esempio!

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2026 vBulletin Solutions, Inc. All rights reserved.