Hola:
 
Míra este código:  
Código:
 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
<html>
<head>
<title>
	http://www.caricatos.net/probador
</title>
<script type="text/javascript">
function tag(id) {return document.getElementById(id);}
function crear(_tag) {return document.createElement(_tag);}
var num = 0;
function insertar(nodo){
 _tr = crear("tr");
 _td = crear("td");
 _in = crear("input");
 _in.setAttribute("type", "text");
 _in.id = "id_" + num;
// _in.setAttribute("Name", "texto" + num++);
 _in["Name"] = "texto" + num++;
// _in["name"] = "texto" + num++;
 _td.appendChild(_in);
 _tr.appendChild(_td);
 nodo.appendChild(_tr);
}
</script>
</head>
<body>
<table id="tabla">
<tr><td>prueba</td></tr>
<tbody id="cuerpo"><tr><td>forma correcta</td></tr></tbody>
</table>
<button type="button>" onclick="alert(tag('tabla').innerHTML)" >mírame</button>
<button type="button>" onclick="insertar(tag('cuerpo'))" >inserción correcta</button>
<button type="button>" onclick="insertar(tag('tabla'))" >inserción incorrecta</button>
</body>
</html>
  Prueba insertando con los 2 botones y mira los resultados. 
Saludos 
