Puedes hacerlo usando el DOM
suponiendo que tengas un form de nombre e id pepe
<form name="pepe" id="pepe">
Puedes crear un textarea y agregarlo así
campo = document.createElement('textarea')
campo.name = "miTextarea"
document.getElementById('pepe').appendChild(campo)
Puedes añadirle tantos atributos al textarea como quieras
campo.cols = 50
campo.className ="miClase"
Para otro tipo de campos sigues las mismas premisas, pero indicando el tipo de control que quieres crear