cosas extrañas con innerHTML

paul22
14 de Septiembre del 2004
Tengo el siguiente problema:

Creo una cadena a la que llamo tabla que finalmente contiene lo siguiente:

<table bgcolor=#FFFFFF><tr><td>Aguas territoriales.</td><td><input name="boton" type="button" id="boton" onclick="eliminar("Aguas territoriales.", "Materia");" value="Eliminar"></td></tr><tr><td>Derechos sobre las aguas.</td><td><input name="boton" type="button" id="boton" onclick="eliminar("Derechos sobre las aguas.", "Materia");" value="Eliminar"></td></tr></table>

Mediante el puntero window.top.opener quiero insertarla con window.top.opener.document.getElementById(lugar).innerHTML=tabla; (uso netscape) en una capa pero no se inserta correctamente sino que en lugar de insertarse la cadena original (tabla), se inserta la siguiente:

<table bgcolor="#ffffff"><tbody><tr><td>Aguas territoriales.</td><td><input name="boton" id="boton" onclick="eliminar(" aguas="" territoriales="" ,="" materia="" )="" value="Eliminar" type="button"></td></tr><tr><td>Derechos sobre las aguas.</td><td><input name="boton" id="boton" onclick="eliminar(" derechos="" sobre="" las="" aguas="" ,="" materia="" )="" value="Eliminar" type="button"></td></tr></tbody></table>

Haciendo pruebas he hecho que la cadena también se inserte en otro campo mediante window.top.opener.document.aniadir.elements.inResumen.value=tabla; (textarea) y la cadena tabla si se inserta correctamente.

¿Qué es lo que ocurre? ¿Cómo lo arrego? Espero que alguien pueda ayudarme.

Gracias de antemano.

susanadobleese
14 de Septiembre del 2004
El problema se debe a q el innerHTML parsea el código creyecto q onclick="eliminar(" es el valor del atributo onClick y el resto lo trata como atributos nuevos.
Puesdes probar a cambiar las comillas dobles de los eventos por comillas simples.
Otra opcion es ponerle ids a los elementos q tienen el onclick, añadir la cadena sin las acciones y acceder despues por id y añadir las accciones.
Espero q te sirva.