Come passare le variabili tra due modelli in XSLT.Come passare le variabili tra due modelli in XSLT
Non riesco a utilizzare la variabile globale perché il valore della variabile dipende dal nodo corrente in valutazione.
Dire che ho XSLT di sorta:
<xsl:template match="product">
<xsl:variable name="pr-pos" select="count(./preceding-sibling::product)+1"/>
..
..
..
<xsl:apply-templates select="countries/country"/>
</xsl:template>
<xsl:template match="countries/country">
<tr id="country-id">
<td><a href="#" class="action" id="{concat('a-',$pr-pos)}">+</a></td>
..
..
Questo dà errore da $ pr-pos non è accessibile in secondo modello.
Come si passa il valore di variabile pr-pos a un altro modello? Come posso fare questo?
Nel tuo caso non hai davvero bisogno di passare una variabile. Il valore di '$ pr-pos' che desideri passare è distinguibile dal modello' country'. – Utkanos
Tutti i linguaggi di programmazione (beh, la maggior parte) hanno un mezzo per passare informazioni a un'altra unità di esecuzione e imparare come farlo è uno dei fondamenti. Questa domanda equivale approssimativamente a chiedere, come passare le variabili tra due funzioni in JavaScript o dire "Ho provato a' function a() {var i = 5; b();} function b() {alert (i); } 'ma' i' non è accessibile in seconda funzione. " –
@torazaburo: non ne ho trovato uno utile che mi spieghi come farlo su google.Non sapevo che è per questo che è stato chiesto, se hai problemi da persone che fanno domande perché non disabiliti il tuo account su StackOverflow. Cerca su google e dimmi che trovi qualche buon documento su questa diversa dalla documentazione di w3. – Harshdeep