我在一个名为'noactiveMsg'的数组中有一个DIV元素数组。
我想将这些DIV元素加载到名为$('#chatCenterMembers')
的DIV中。
我试过了:
noactiveMsg.appendTo($('#chatCenterMembers'));
但这不起作用。 有人可以建议将一组元素/对象加载到div中吗?
制作数组的代码:
var noactiveMsg=[];
$('div.chatmember').each(function() {
if($(this).children().children('div').hasClass('chatactivestatus_offline')) {
alert('offline');
noactiveMsg.push($(this));
}
});
答案 0 :(得分:1)
如果数组的每个元素都是jQuery对象,那么可以试试这个:
一些示例html:
<div>
<p>Some stuff below!</p>
</div>
jQuery的东西:
$(function(){
var foo = [];
foo.push( $('<p>hello</p>') );
foo.push( $('<p>world</p>') );
foo.push( $('<p>Adam</p>') );
// this will fail because each element is a
// separate jQuery object
// $('div').append( foo );
// instead try this
$.each(foo, function(){
$('div').append(this);
})
});
答案 1 :(得分:0)
我认为这是您需要的代码。 假设noactiveMsg是一个包含jQuery对象的数组。
cnt = noactiveMsg.length();
for(i=0; i<cnt; i++) {
$('#chatCenterMembers').append(noactiveMsg[i].html());
$('#chatCenterMembers').append(noactiveMsg[i].html());
答案 2 :(得分:0)
您需要将它们全部合并到一个jQuery对象中:
var noactiveMsg = [$('<a>1</a>'), $('<a>1</a>')],
collection;
$.each(noactiveMsg, function(i, e) {
collection ? collection = collection.add(e) : collection = e;
});
修改强>
其他人建议将数组中的每个元素分别添加到DOM中。我强烈建议你不要这样做。与DOM交互是一项昂贵的操作,应尽可能避免使用。