动态生成input输入框

最近写项目须要实现一个动态生成input功能。本来觉得很简单,只须要在前端js中写一个方法,拼接一个字符串经过innerHTML添加至html。html

代码以下:前端

for(var i=0;i<3;i++){
             j=i+1;
             var name="制件"+j;
             var value="value"+i;
             var str=name+":<input type='text' name='"+value+"' value='' class='form-control'>"
             a=a+str;
             
         }orm

document.getElementById("id").innerHTML=a;htm

后来提出新的要求,须要动态添加若干个input。将innerHTML换成insertAdjacentHTML。字符串

 

for(var i=0;i<3;i++){
             j=i+1;
             var name="制件"+j;
             var value="value"+i;
             var str=name+":<input type='text' name='"+value+"' value='' class='form-control'>"
             a=a+str;
             
         }get

document.getElementById("work").insertAdjacentHTML('beforeBegin',a);input

使用innerHTML后,持续添加时会将上次添加的内容替换掉。form

insertAdjacentHTML能够在上次的内容基础上持续添加。class

insertAdjacentHTML有四个特性:基础

1.     beforeBegin: 插入到标签开始前

2.     afterBegin:插入到标签开始标记以后

3.     beforeEnd:插入到标签结束标记前

4.     afterEnd:插入到标签结束标记后

相关文章
相关标签/搜索