Les paso a detallar mi extraño problema, resulta que tengo una funcion en javascript para que me agregue dentro de una etiqueta div una fila de una tabla, con dos columnas dentro de ella.La funcion es extremadamente simple, no es mas que concatenar la cadena al contenido html de la etiqueta div en cuestion. El problema es que el resultado de esta funcion no termina siendo el deseado y por alguna razon empiezan a aparecer/desaparecer etiquetas (ahora con el codigo se entendera mejor), ademas por lo que estuve probando el problema aparentemente es solo cuando hay una tabla de por medio (table, tr, td, tbody, etc). La funcion en cuestion es agregarrelacionado().
Código HTML:
<div id=contenido> <h3>Agregar un nuevo perfil al sistema</h3> <h4>Complete todos los datos del perfil</h4> <form name="nuevoperfil" action="altaperfil.php" method="POST" enctype="multipart/form-data"> <table border="0"> <tbody> <tr> <td>Perfiles relacionados</td> <td> <a href="javascript:agregarrelacionado()" >Agregar relacion</a><br> <input type="text" name="buscar" value="" size="15" /></td> </tr> <div id="relaciones" ></div> <tr> <td></td> <td><input type="button" value="Guardar Perfil" name="btnguardar" onclick="altaperfil()"/></td> </tr> </tbody> </table> </form> </div>
Código javascript:
Ver original
function agregarrelacionado() { var viejo=document.getElementById("relaciones").innerHTML; var nuevo = viejo + '<tr><td></td><td><input type="text" name="buscar" value="" size="15" /><a href="javascript:void(0)" onclick="eliminarrelacionado(this)">Eliminar relacion</a></td></tr>'; document.getElementById("relaciones").innerHTML=nuevo; }
La idea seria obtener, con cada click en la funcion, un resultado de este tipo
Código HTML:
<div id="relaciones" > <tr> <td></td> <td><input type="text" name="buscar" value="" size="15" /><a href="javascript:void(0)" onclick="eliminarrelacionado(this)">Eliminar relacion</a></td> </tr> </div>
Código HTML:
<div id="relaciones"> <div/> <tr> <td/> <td> <input type="text" size="15" value="" name="buscar"/> <a onclick="eliminarrelacionado(this)" href="javascript:void(0)">Eliminar relacion</a> </td> </tr> </div>
Muchas gracias.
PD: notese en el resultado la aparición de la extraña etiqueta <div/> y <td/>