Генератор полей формы на JS. Как улучшить?
Как улучшить? Поизвращаемся...<div id="fields">Контейнер полей</div>

     <a onclick="fields.add('input');">Add</a>
     <a onclick="fields.remove();">Remove</a>var FieldSet=function(container,tagID){
             this.fields=[];
             this.container=(typeof container=='object')?container:document.getElementById(container);
             var id=0;

             this.add=function(type){
                 var template={input:'TextField Name : <input type = "text" name="txt_field"> -> your text field has been generated just define name',
                             textarea:'',
                             table_name:''}[type],
                         wrapper=document.createElement("div");

                 wrapper.innerHTML=template;
                 tagID&&wrapper.setAttribute("id",tagID+(id++));//можно выбросить если не надо id для полей
                 this.container.appendChild(wrapper);
                 this.fields.push(wrapper);
                 return wrapper;
             }

             this.remove=function(index){
                 this.container.removeChild(this.fields.pop());
             }
         }

         var fields=new FieldSet("fields");//id или элемент контейнера для коллекции полей
Вместо innerHTML использовать appendChild.