XSL - Dar valor a una variable

 
Vista:

Dar valor a una variable

Publicado por Miguel (1 intervención) el 27/07/2004 09:38:12
Dentro de un xslt tengo una variable en un javascript. Como puedo asignarle el valor de esta variable a una xsl:variable o utilizar la variable de javascript en una condicion de un if
Gracias.
Miguel
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:Dar valor a una variable

Publicado por Iuav (29 intervenciones) el 31/03/2005 23:37:21
Para utilizar la variable del JavaScript puedes setear con la ´propiedad addParameter del XMLDOM como se puede ver en el código de la función outputgroup.
En tu archivo XSL puedes hacer la llamada a esta función mediante
<xsl:attribute name="href">
<xsl:value-of select="concat('javascript:outputgroup("',@id,'");')"/>
</xsl:attribute>

Y también deberás tener declarado el parámetro
<xsl:param name="subj"/>
y utilizas éste parámetro en cualquiera condición como:
<xsl:if test="@id[.=$subj]">
.. hacer algo ..
</xsl:if>

function outputgroup(subject){
var xslt = new ActiveXObject("Msxml2.XSLTemplate");
var xslDoc = new ActiveXObject("Msxml2.FreeThreadedDOMDocument");
var xslProc;
xslDoc.async = false;
xslDoc.resolveExternals = false;
xslDoc.load("archivo.xsl");
xslt.stylesheet = xslDoc;
var xmlDoc = new ActiveXObject("Msxml2.DOMDocument");
xmlDoc.async = false;
xmlDoc.resolveExternals = false;
xmlDoc.load("archivo.xml");
xslProc = xslt.createProcessor();
xslProc.input = xmlDoc;
xslProc.addParameter("subj", subject);
xslProc.transform();
document.write(xslProc.output);
}

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