en el sentido tecnico esta bien. es decir, no genera error de ningun tipo. en el sentido logico
quizas esta mal porque estas agregando la nueva clonacion dentro del elemento clonado, pero depende si es lo que querias lograr o no. es decir, te va quedando mas o menos la siguiente estructura. aparte que cada vez presionas el boton se van duplicando los que ya agregastes.
Código:
<div id="fila">
<input type="text" value="" size="5" name="cantidad"/>
<input type="text" value="" size="30" name="descripcion"/>
<input type="text" value="" size="5" name="precio"/>
<input type="text" value="" size="5" name="total"/>
<div id="fila">
<input type="text" value="" size="5" name="cantidad"/>
<input type="text" value="" size="30" name="descripcion"/>
<input type="text" value="" size="5" name="precio"/>
<input type="text" value="" size="5" name="total"/>
<div>
<div>
¿como lo hubiera hecho? pues quizas teniendo una estructura inicial como la siguiente,
Código:
<div id="contenedor"><p> <!-- fijate que ambos tags estan declarados en una misma linea sin separarse -->
<input type="text" value="" size="5" name="cantidad"/>
<input type="text" value="" size="30" name="descripcion"/>
<input type="text" value="" size="5" name="precio"/>
<input type="text" value="" size="5" name="total"/></p>
<div>
[Boton Add]
y el script,
Código:
var container = document.getElementById('contenedor');
container.appendChild(container.firstChild.cloneNode(true));