我有以下jQuery代码(x是3,i是1和STOREID为4):Jquery的.append过写入
function addNewTableRow(x,i,storeid){
$('#kds_resultsTable tbody').append('<tr></tr>'); //tr:nth-child('+(i)+')'
for (var a=1; a<=x; a++) {
if(a==1){
$('#kds_resultsTable tbody tr:nth-child('+(i)+')').append($.parseHTML("<td class='"+i+"'></td>"));
}else{
$('#kds_resultsTable tbody tr:nth-child('+(i)+')').append($.parseHTML("<td class='"+i+" kds_elementstoreid_"+storeid+"></td>"));
}
}
}
然而,如果x是确实3(指示其他情况下应印刷恰好两次)HTML输出是该(单一的表格行作为例子):
<tr>
<td class="5 kds_elementsstoreid_4"></td>
</tr>
这样看来,在.append被重写循环在先前所附文本并只留下我与HTML在循环的最后一次迭代中产生。我会期待3 <td></td>
元素,而不只是一个。
是.append()
正确的jQuery函数在这里使用,还是应该用别的东西不会覆盖我以前的内容?我不确定在不使用.append()
的情况下实现我想要做的事情的另一种方式。
作为一个参考点,我使用的是最新版本的jQuery(截至15/3/13)。
重现上http://jsfiddle.net – zerkms 2013-03-17 23:24:07