使用jQuery在单击时向div添加html输入框

3

我需要在点击按钮时向页面添加输入框,我已经编写了以下的jquery脚本。第一次单击时它会添加一个输入框,但不会重复添加。

<script type="text/javascript">
   function addInput(){
      $('#fileinput').html('<label>Filename:</label>
                        <input type="file" name="file"  id="file" />');
   }
</script>

请有人帮我修改代码,使得每次单击按钮时都会添加一个输入框。

4个回答

8
$('#buttonID').click(function(){
    $('#fileinput').html($('#fileinput').html()+'<label>Filename:</label>
                    <input type="file" name="file"  id="file" />');
});

或者像其他人建议的那样使用 append
$('#buttonID').click(function(){
    $('#fileinput').append('<label>Filename:</label>
                    <input type="file" name="file"  id="file" />');
});

2
您的代码目前会用相同的HTML替换您的#fileInput元素中已有的HTML。您可能想要使用的是append()方法。
   function addInput(){
      $('#fileinput').append('<label>Filename:</label>
                        <input type="file" name="file"  id="file" />');
   }

2
尝试使用append而不是htmlhttp://api.jquery.com/append/
<script type="text/javascript">
 function addInput(){
  $('#fileinput').append('<label>Filename:</label>
              <input type="file" name="file"  id="file" />');
}
</script>

1

这是因为您每次没有进行添加到HTML,而只是将其设置为显示单个input


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接