Hola:
Los controles de formularios son difíciles de manejar, ya que por razones de seguridad no es posible, en ocasiones, cambiar algunos atributos, como "name", "type"... creo que en algunos navegadores pueden modificarse con setAttribute(), pero de la manera que he comprobado que va bien en todos es clonando un control existente con ese atributo ya asignado (podría ser fuera de formularios, por ejemplo en una capa oculta)
<div style="display: none">
<input type="text" name="input1" id="clonar" />
</div>
...
newInput = document.getElementById("clonar").cloneNode(true);
//newInput.type="text";
//newInput.name=input1;
//newInput.value="";
newInput.id=input1;
Saludos