我问了另一个问题,并得到了答案,但仍然设法搞砸了。我有一个for循环,我想在我的for循环中制作模板的克隆。我想首次通过循环将每个id替换为id + 0。因此,标识为tFirstName
的文本框将为tFirstName0
,标识tLastName
将为tLastName0
,依此类推......然后,对于下一个克隆,然后下一次循环它将是tFirstName1,tLastName1,等等..
此代码的问题是i
为每个文本框添加一个,因此在第一个模板中,ID为tFirstName0
,tLastName1
,等等。
我正在寻找 - 如果有人建议让i
在for循环中保持统一,那么增加,然后在下一个循环中保持统一
var NumofClones = (4 * 1);
for (i = 0; i < NumofClones; i++) {
var newrow = $('._template').clone().removeClass('_template');
newrow.find('input[type=text]').attr('id', function (i, oldID) {
return oldID + i
});
$('.placenewrows').append(newrow);
}
答案 0 :(得分:4)
i
的回调函数中的.attr()
引用参数i
,而不是for循环中的i
,更改参数i
对其他人的回调函数。
var NumofClones = (4 * 1);
for (var i = 0; i < NumofClones; i++) {
var newrow = $('._template').clone().removeClass('_template');
newrow.find('input[type=text]').attr('id', function (index, oldID) {
return oldID + i;
});
$('.placenewrows').append(newrow);
}