在jQuery中创建新的HTML元素

时间:2019-03-26 22:47:37

标签: javascript jquery html

我在这里有一个div,其中包括三个输入,这是一个文件输入,我希望在用户添加文件时出现该div的另一个副本,以便用户可以添加另一个文件。我想在jQuery

中做到这一点

我尝试了append()事件,并复制了该div的HTML代码,但是当该副本出现并且用户选择另一个文件时,就没有其他副本出现了

<div class="master-div">
  <div class="divv">
    <input class="click" type="file"> 
   <input type="text">
   <input type="text">
 </div>
</div>
$('.click').on('click', function () {
        $('.master-div').append('
<div class="divv">
    <input class="click" type="file"> 
   <input type="text">
   <input type="text">
 </div>');


    });

1 个答案:

答案 0 :(得分:-1)

您的问题是,在运行代码时,单击处理程序仅附加到页面上的.click元素上。将您的处理程序附加到.master-div,并听取对click的点击:

$(".master-div").on("click", ".click", function() {
  $('.master-div').append('<div class="divv"><input class="click" type="file"><input type="text"><input type="text"></div>');
});
<script src="https://code.jquery.com/jquery-3.3.1.js"></script>
<div class="master-div">
  <div class="divv">
    <input class="click" type="file">
    <input type="text">
    <input type="text">
  </div>
</div>