javascript - jQuery clone div 每次点击

标签 javascript jquery html css

我有一个简单的表单,并带有一个按钮,可以在单击时克隆我的表单。问题是,当我第一次单击按钮时,它工作正常,但下一次单击时它会附加许多 div。有什么办法可以每次点击都复制一份吗? 这是我的片段:

$(document).ready(function() {
    $(".Add").click(function() {
        $(".formi").clone().insertAfter(".formi:last");
    });
});
.formi {
    border: 1px solid #000;
    width: 50%;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.8.2/jquery.min.js"></script>
<span class="Add">Add+</span>
<div class="all">
    <form class="formi">
        <input type="text" placeholder="name" />
        <select name="cars">
            <option value="">one</option>
            <option value="">two</option>
        </select>
        <button type="submit">ok</button>
    </form>
</div>

最佳答案

您可以使用 eq(0) 查找第一个表单而不是在 DOM 中查找所有表单,或者查找最近的一个表单,

$(document).ready(function(){
    $(".Add").click(function(){
		  $(".formi").eq(0).clone().insertAfter(".formi:last");
//$(".formi:last").clone().insertAfter(".formi:last");
    });
});
.formi{border:1px solid #000;width:50%;}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.8.2/jquery.min.js"></script>
<span class="Add">Add+</span>
<div class="all">
<form class="formi">
<input type="text" placeholder="name"/>
<select name="cars">
<option value="">one</option>
<option value="">two</option>
</select>
<button type="submit">ok</button>
</form>
</div>

关于javascript - jQuery clone div 每次点击,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41217496/

相关文章:

jquery - .addClass 与 JQuery 的特异性?

javascript - JQuery mouseleave 函数快速返回而不是转换?

javascript - v-for 按日期分组渲染项目

jquery - 创建图像叠加层

javascript - add_commas 函数不适用于 10000 但 1000

javascript - 如何将 input(type = text ) 从 html 表单传递到 javascript 函数

javascript - 通过 javascript/jquery 注入(inject) html?

javascript - 使用 Mapbox 更新 Prop 的正确方法

javascript - 为什么从函数调用分配给属性innerHTML不起作用?

javascript - 在 Javascript 中对数组进行排序时出现意外错误