XSL - Busqueda de datos dentro del mismo xsl

 
Vista:

Busqueda de datos dentro del mismo xsl

Publicado por Maife (3 intervenciones) el 04/09/2006 08:22:59
Necesito realizar lo siguiente

Tengo un xsl que pinta una cabecera donde hay condiciones de busqueda.... al presionar el boton buscar tengo que visualizar el contenido del xml en el mismo xsl como detalle.

El xsl es llamado desde una pagina asp, la programacion en vbscript y javascript estan dentro del xsl.

Ahora como puedo hacer para re-utilizar el xsl pero sin perder la informacion que ya ingrese en la pantalla ????

Alguna idea??

Espero haberme hecho entender

Gracias a todos
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

Reutilizar un XSL sin perder datos ingresados

Publicado por Alejandro (227 intervenciones) el 05/07/2023 22:05:26
En el escenario que describes, tienes un XSL que muestra una cabecera con condiciones de búsqueda y, al presionar el botón "Buscar", deseas visualizar el contenido del XML en el mismo XSL como detalle. La programación en VBScript y JavaScript está dentro del XSL. Ahora te preguntas cómo puedes reutilizar el XSL sin perder la información que ya has ingresado en la pantalla. Aquí tienes una idea para abordar esta situación:

1. Al presionar el botón "Buscar", realiza una llamada al servidor para procesar la búsqueda y obtener los resultados del XML.
2. En el servidor, genera un nuevo XML que contenga los resultados de la búsqueda. Puedes utilizar lenguajes de programación como VBScript o JavaScript para realizar esta tarea.
3. En la respuesta del servidor, incluye el nuevo XML como parte de los datos enviados al cliente.
4. En el XSL, agrega una lógica que verifique si existe el nuevo XML en los datos recibidos. Si está presente, muestra los detalles en la misma página. Si no está presente, muestra la cabecera de búsqueda.
5. Utiliza las capacidades del XSL para iterar sobre los elementos del nuevo XML y mostrar los detalles según sea necesario.

Aquí hay un ejemplo simplificado de cómo podrías estructurar tu XSL:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
  <xsl:output method="html" />
 
  <!-- Verifica si el nuevo XML está presente en los datos -->
  <xsl:template match="/">
    <xsl:choose>
      <xsl:when test="data/new-xml">
        <!-- Mostrar detalles del nuevo XML -->
        <xsl:apply-templates select="data/new-xml" />
      </xsl:when>
      <xsl:otherwise>
        <!-- Mostrar la cabecera de búsqueda -->
        <xsl:call-template name="search-header" />
      </xsl:otherwise>
    </xsl:choose>
  </xsl:template>
 
  <!-- Plantilla para la cabecera de búsqueda -->
  <xsl:template name="search-header">
    <!-- Código HTML/JavaScript para la cabecera de búsqueda -->
    <!-- Incluir el formulario de búsqueda y el botón "Buscar" -->
  </xsl:template>
 
  <!-- Plantilla para mostrar los detalles del nuevo XML -->
  <xsl:template match="new-xml">
    <!-- Código HTML/JavaScript para mostrar los detalles del XML -->
    <!-- Utilizar las capacidades de XSL para iterar sobre los elementos y mostrar los detalles -->
  </xsl:template>
 
</xsl:stylesheet>

Ten en cuenta que este es solo un ejemplo básico para ilustrar la idea principal. Deberás adaptarlo y personalizarlo según tus necesidades y la estructura de tus datos.

Recuerda que al reutilizar el mismo XSL, puedes mantener la información ingresada en la pantalla siempre que la respuesta del servidor incluya los datos necesarios para mostrar los detalles.
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