XSL - Variables de XSL

 
Vista:

Variables de XSL

Publicado por Gerardo (2 intervenciones) el 13/09/2005 20:40:04
Hola, mi pregunta es la siguiente:
Como concatenar el contenido de un nodo en una variable.
O sea:
<raiz>
<nodo>
<id>1</id>
<id>2</id>
<id>3</id>
<id>4</id>
</nodo>
</raiz>

Quisiera guardar "1,2,3,4,5" dentro de una variable o al menos poder asignarselo a un atributo, ej:

<input type="checkbox" >
<xsl:attribute name="value" >
<xsl:value-of select="$id"/>
</xsl:attribute>
</input>

Estuve probando con el for-each pero no me salio nada en limpio.
Alguien sabria como hacer esto??
Saludos.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:Variables de XSL

Publicado por Iuav (29 intervenciones) el 14/09/2005 18:24:07
Hola,
Creo que lo que planteas sí, no hay posibilidad de asignarle en una variable mientras recorres los nodos de un elemento, para ello creo que la salida está por el lado de javascript o cualquier lenguaje de programación (ASP, Java, Phyton, etc), desde ahí recorres los nodos con un for y le vas sumando en una variable los valores de cada nodo.
Saludos
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Variables de XSL

Publicado por Gerardo (2 intervenciones) el 14/09/2005 19:19:56
Gracias por la respuesta.
Igualmente segui intentando y logre hacer lo que queria con xsl.
Es medio rebuscado (por no decir trucho) pero me funciona.
El xml era:
<raiz>
<nodo>
<id>1</id>
<id>2</id>
<id>3</id>
<id>4</id>
</nodo>
</raiz>

lo que hice fue:
{translate(string(raiz/nodo),' ',',')}
donde:
string(raiz/nodo): pasa todo el contenido del nodo a strings separados por un espacio
y:
translate : reemplaza los espacios por comas.
quedando como resultado final "1,2,3,4" sin tener que recorrer el nodo por medio de programacion adicional.

Saludos.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar