Visualizzazione dei risultati da 1 a 2 su 2
  1. #1

    Tag input e attributi dinamici

    Innanzitutto, buongiorno.

    Vi sottopongo il mio problema:

    Tramite XSLT devo ottenere questo:

    <input type="text" style="width:150px" name="cognomeTXT"></input>

    partendo da questo:

    <lspggettohtml id="1" tipo="input" etichetta="Cognome">
    <lsp:attributo>
    <lsp:nome>type</lsp:nome>
    <lsp:valore>text</lsp:valore>
    </lsp:attributo>
    <lsp:attributo>
    <lsp:nome>style</lsp:nome>
    <lsp:valore>width:150px</lsp:valore>
    </lsp:attributo>
    <lsp:attributo>
    <lsp:nome>name</lsp:nome>
    <lsp:valore>cognomeTXT</lsp:valore>
    </lsp:attributo>
    </lspggettohtml>


    Qualcuno sa scrivere l'XSLT che ottiene il risultato?

    Nei miei tentativi mi sono scontrato col seguente PROBLEMA:
    l'attributo type del tag <input> non ne vuole sapere di essere
    letto del file XML.
    Se provo, ad esempio, un "classico" {lsp:nome/text()}, il file XSLT va in errore!

    Spero di essere stato chiaro.

    Grazie.

  2. #2
    Prova così

    Questo è il file xml ( ho inserito un namespace perché mi scocciava ripetere ogni volta il prefisso lsp

    post02.xml

    <?xml version="1.0"?>
    <?xml-stylesheet type="text/xsl" href="post02.xslt"?>
    <oggettohtml id="1" tipo="input" etichetta="Cognome" xmlns:lsp='http://lsp.example.org/schema'>
    <attributo>
    <nome>type</nome>
    <valore>text</valore>
    </attributo>
    <attributo>
    <nome>style</nome>
    <valore>width:350px</valore>
    </attributo>
    <attributo>
    <nome>name</nome>
    <valore>cognomeTXT</valore>
    </attributo>
    </oggettohtml>

    e questa è la trasformazione in xslt

    post02.xslt

    <?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></head><body><form>
    <xsl:element name="{oggettohtml/@tipo}">
    <xsl:for-each select="oggettohtml/attributo">
    <xsl:attribute name="{nome}"><xsl:value-of select="valore"/></xsl:attribute>
    </xsl:for-each>
    </xsl:element>
    </form></body></html>
    </xsl:template>
    </xsl:stylesheet>

    su IE7 funziona.

    Vedi un po' tu. Ciao

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.