Umm.... si ya sé de que es, es al meter todo dentro de un
XSL
Código completo (aunque ya no sé si esto va en javascript o en XML
)
Código PHP:
<?xml version="1.0" encoding="iso-8859-1"?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:template match="/">
<html>
<Body>
<Script language="JavaScript">
function Reescribe(){
var cadena='';
cadena="<h2>Capa con contenido Cambiado</h2><Br/><Br/>";
cadena += "Este contenido está cambiado";
Resumen.innerHTML=cadena;
alert(document.getElementById("Resumen").innerHTML);
}
</Script>
<xsl:for-each select="representaciones/representacion">
<p>
<h2>
Código: <xsl:value-of select="codigo"/>
<br/>
Nombre: <xsl:value-of select="nombre"/>
<br/>
Límite: <xsl:value-of select="descripcion"/>
</h2>
</p>
<div id="{nombre}">
<form onSubmit="Reescribe();">
<input name="Tabla" type="hidden" value="" >
</input>
<input name="Atributo" type="hidden" value="" >
</input>
<input name="Tipo" type="hidden" value="" >
</input>
<input name="Representacion" type="hidden" value="{codigo}" >
</input>
<input type="submit" value="Enviar datos">
</input>
</form>
</div>
</xsl:for-each>
<p> Capa de resumen de elecciones </p>
<div id="Resumen" style="position:absolute;width:1000;height:100;top:500;left:50;background-color:yellow">
</div>
</Body>
</html>
</xsl:template>
</xsl:stylesheet>
Independientemente de la utilidad del código, esta en fase de desarrollo de "algo"
, la llamada a la función reescribe funciona, pero no deja los cambios permanentes.
Decir que el IExplorer 7 me muestra una barra en la que me dice que ha bloqueado código "malicioso" ó algo por el estilo (se refiere a javascript). Le digo que lo permita, lo permite, cambia la capa, sale el alert, doy a aceptar y vuelta al principio, la capa se queda vacía :S
Esto me pasa usando la función dentro de un XSL, usandola en un html normal no ocurre.
¿Alguna idea?
Muchas gracias, un saludo.