我有一个for
循环来生成一行div
s,我的代码是
for(j=0; j<7; j++) {
$('<div/>', {
id: 'unique',
html: 'whatever'
}).appendTo('#container');
此代码似乎为每次迭代寻找#container并为其添加一个新的div。
如何编写代码以便我可以先创建所有div然后一次追加到容器中?抱歉,我尝试搜索连接/分组/添加jquery对象等关键字,并且似乎没有正确的搜索结果。
TIA
答案 0 :(得分:7)
Xander的解决方案应该可以正常工作。我个人不喜欢在js中使用'long'HTML字符串。这是一个看起来与您的代码更相似的解决方案。
var elements = [];
for(j=0; j<7; j++) {
var currentElement = $('<div>', { id: i, text: 'div' });
elements.push(currentElement[0]);
}
$('#container').append(elements);
答案 1 :(得分:4)
这可能会有所帮助
var htm = '';
for(j=0; j<7; j++) {
htm+= '<div id="unique_'+i+'">whatever</div>';
}
$('#container').html(htm); // Or append instead of html