Ciao volevo fare un ciclo in xsl che parte da 1 a 5.Senza usare Javascript.
Qualcuno di voi sa?
Ciao volevo fare un ciclo in xsl che parte da 1 a 5.Senza usare Javascript.
Qualcuno di voi sa?
Allejo
Ho fatto una ricerca anke su internet....nulla.
Ma credo che il ciclo for da 1 a n in XSL non esiste.
![]()
Allejo
Quindi NON SI PUO' FARE!!!!!!!!!!!!!!!!!!
Che strano.
L'unica cosa da fare è usare Javascript!
![]()
Allejo
Ciao.
Crei uno script msxsl nel foglio di stile, nel quale inizializzi una variabile a zero e crei un metodo che, ogni volta che lo richiami per ottenere il valore della variabile, la aumenta di una unità.
Prima di tutto devi dichiarare il namespace scripts che poi utilizzerai per richiamarlo. Poi devi fare una cosa del genere:
<msxsl:script implements-prefix="scripts">
var counter = 0;
function getCount()
{
return counter++;
}
</msxsl:script>
Che poi richiamerai
<xsl:for-each select="nododacuipartire">
<xsl:variable name="contatore"><xsl:value-of select="scripts:getCounter()"/></xsl:variable>
<xsl:if test="$contatore != '5'">
qui metti quello che devi fare
</xsl:if>
</xsl:for-each>
Non ho provato il codice, ma penso che funzioni.
Per quanto ne so io, non ci sono altri modi per gestire una situazione del genere senza usare msxsl:script oppure javascript.
Prova e fammi sapere....
Ciao!![]()