XSL - Tabla

 
Vista:

Tabla

Publicado por Mario (1 intervención) el 31/05/2006 23:58:16
Soy novato en esto y quesiera saber como puedo meter uno dato multivaluado en una tabla en un archivo xsl ..

es que por el momento lo tengo asi pero nada mas me imprime un nombre

digamos que mi estructura es esta:

<Peliculas>
<Pelicula>
<Nombre>Matrix </Nombre>
<Director> Wachowski Brother`s </Director>
<Actores>Keanu Reeves</Actores>
<Actores>Laurence Fishburne</Actores>
<Actores>Carrie-Anne Moss</Actores>
<Actores> Hugo Weaving</Actores>
<Actores>Joe Pantoliano </Actores>
<Genero>Ciencia- Ficcion</Genero>
<Año>1999</Año>
</Pelicula>
</Peliculas>

Y tiene varias peliculas y quiero meterlas a una tabla pero al meter todo al campo actores nada mas logro meter un nombre .. como hago para meter los demas
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
Imágen de perfil de Alejandro

Mostrar datos multivaluados en una tabla

Publicado por Alejandro (227 intervenciones) el 05/07/2023 21:52:29
Para mostrar datos multivaluados en una tabla en un archivo XSL, puedes utilizar la estructura `xsl:for-each` para iterar sobre los elementos y mostrarlos individualmente. Aquí tienes un ejemplo de cómo hacerlo para el campo `Actores` en tu estructura XML:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
<table>
  <tr>
    <th>Nombre</th>
    <th>Director</th>
    <th>Actores</th>
    <th>Género</th>
    <th>Año</th>
  </tr>
  <xsl:for-each select="Peliculas/Pelicula">
    <tr>
      <td><xsl:value-of select="Nombre"/></td>
      <td><xsl:value-of select="Director"/></td>
      <td>
        <xsl:for-each select="Actores">
          <xsl:value-of select="."/><br/>
        </xsl:for-each>
      </td>
      <td><xsl:value-of select="Genero"/></td>
      <td><xsl:value-of select="Año"/></td>
    </tr>
  </xsl:for-each>
</table>

En este ejemplo, utilizamos un bucle `xsl:for-each` para recorrer cada elemento `<Pelicula>`. Dentro de ese bucle, utilizamos otro bucle `xsl:for-each` para recorrer cada elemento `<Actores>` y mostrarlos uno por uno utilizando `xsl:value-of`.

Al utilizar `<xsl:value-of>` dentro del segundo bucle, se mostrará cada nombre de actor en una línea separada dentro de la celda de la tabla.

Recuerda ajustar la estructura XML y los selectores según tus necesidades.

Espero que esta solución te ayude a mostrar los datos multivaluados en una tabla en tu archivo XSL. ¡Buena suerte!
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