Foros del Web » Programación para mayores de 30 ;) » Programación General »

Frustrante xsl:when

Estas en el tema de Frustrante xsl:when en el foro de Programación General en Foros del Web. Hola ! Necesito hacer un <xsl:choose> y su <xsl:when test=""> correspondiente de tal forma que el test de entrada se cumpla cuando el atributo del ...
  #1 (permalink)  
Antiguo 14/09/2004, 09:50
 
Fecha de Ingreso: agosto-2003
Ubicación: Málaga, España
Mensajes: 419
Antigüedad: 20 años, 9 meses
Puntos: 1
Frustrante xsl:when

Hola !

Necesito hacer un <xsl:choose> y su <xsl:when test=""> correspondiente

de tal forma que el test de entrada se cumpla cuando el atributo del elemento de entrada sea igual a lo que quiero comprobar.

Ejemplo: Se trata de que cuando el archivo HTML de entrada tenga un TAG 'DIV' lo traduzca según sea el valor de suatributo 'class' (<div class="txt">CONTENIDO</div>)
Esta es la hoja con la que trato de conseguirlo:

<xsl:template match="div">

<xsl:choose>

<xsl:when test="class='card'">
<card>
----------- Acciones ----------
</card>
</xsl:when>

<xsl:when test="class='txt'">
<txt>
----------- Acciones ----------
</txt>
</xsl:when>
</xsl:choose>

</xsl:template>

No consigo hacer que funcione
¿Cómo puedo hacerlo?

Gracias, y un saludo.
Miguel.
  #2 (permalink)  
Antiguo 16/09/2004, 04:01
Avatar de Helbira  
Fecha de Ingreso: octubre-2001
Ubicación: Sevilla, España
Mensajes: 1.228
Antigüedad: 22 años, 6 meses
Puntos: 5
Te falta ponerle el carácter @ delante del nombre del atributo.
Te quedaría así el código:

<xsl:template match="div">

<xsl:choose>

<xsl:when test="@class='card'">
<card>
----------- Acciones ----------
</card>
</xsl:when>

<xsl:when test="@class='txt'">
<txt>
----------- Acciones ----------
</txt>
</xsl:when>
</xsl:choose>

</xsl:template>
  #3 (permalink)  
Antiguo 16/09/2004, 04:58
 
Fecha de Ingreso: agosto-2003
Ubicación: Málaga, España
Mensajes: 419
Antigüedad: 20 años, 9 meses
Puntos: 1
Cierto!!
Ahora funciona (al menos un poco más que antes)
Es que es el primer código XSL que escribo. :)

Muchas Gracias !
Miguel.
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 23:59.