我一直在修改一个片段,用于克隆问卷中的“客户资料”部分。在该部分的顶部,我有一个div设置为标题
<div class="sub_title04" id="cus_title">Customer 01</div>
我正在调用的JQuery片段是
$("#p20_01_yes").click(function(){
var num = $('.clone_el').length,
newNum = new Number(num + 1),
clonedFieldset = $("#cloner").clone().appendTo("#page20");
clonedFieldset.attr('id',('cloner')+newNum).find("input, textarea, select, label, #cus_title").each(function() {
var item = $(this);
item.attr('name', item.attr('name') +newNum).attr('id', item.attr('id') +newNum);
$('#cus_title').text("Customer 0"+newNum);
});
});
这一点
$('#cus_title').text("Customer 0"+newNum);
设置为标题的整数,因此它是“客户01,客户02,客户03”等。它可以工作,但不是按照预期的方式。会发生什么是第一个标题更新和重复项。
例如,如果我复制了7次,则从页面顶部开始,标题为“客户07,客户01,客户02,客户03,客户04,客户05,客户06”,而不是仅仅停留在顺序。
如何按顺序克隆它?
答案 0 :(得分:1)
尝试prepending克隆到父
$("#p20_01_yes").click(function(){
var num = $('.clone_el').length,
newNum = new Number(num + 1),
clonedFieldset = $("#cloner").clone().prependTo("#page20"); // <- here
clonedFieldset.attr('id',('cloner')+newNum).find("input, textarea, select, label, #cus_title").each(function() {
var item = $(this);
item.attr('name', item.attr('name') +newNum).attr('id', item.attr('id') +newNum);
$('#cus_title').text("Customer 0"+newNum);
});
});
这颠倒了我猜测你正在努力实现的目标。