我想将更新的javascript数据附加到2个范围标记,rescued
和rescued2
,如果可用的话。由于我正在追加新数据,我首先需要先清空标签,这样它们就不会重新出现数据......
function updateHUD() {
$('#bottomDisplay').empty();
$('#rescued').append("Total Animals Rescued: " + rescuedTotal_Array.length);
$('#rescued2').append("Total Animals Rescued lol: " + rescuedTotal_Array.length);
}
<div id="bottomDisplay">
<ul>
<li>Total Animals Rescued: <span id="rescued"></span></li>
<li>Total Animals Rescued2: <span id="rescued2"></span></li>
</ul>
</div>
我想明确这样做,所以我不需要单独clear
每个span
...而是清除整个div块,然后重新开始。相反,当我清除div
块时,它只会擦除内部的所有跨度。
为什么这是不可接受的?
另一方面,我想我可以跳过clearing
和appending
,然后设置文字......
$('#rescued').text(rescuedTotal_Array.length);
$('#rescued2').text(rescuedTotal_Array.length);
答案 0 :(得分:2)
.empty
摆脱了所选元素中的所有内容。如果你想一次性清空两个跨度,你需要这样做:
$('#bottomDisplay').find('span').empty();
供参考,这是.empty
的样子:
empty: function() {
var elem,
i = 0;
for ( ; (elem = this[i]) != null; i++ ) {
if ( elem.nodeType === 1 ) {
// Prevent memory leaks
jQuery.cleanData( getAll( elem, false ) );
// Remove any remaining nodes
elem.textContent = "";
}
}
return this;
}
elem.textContent = "";
正在摆脱内心的一切。
答案 1 :(得分:1)
我对这个问题感到有些困惑,但我想我明白了。如果我不完全理解你,请纠正我。
您正在寻找一条线来清空两个跨度。但是,您希望将div中的其余HTML保留为完整,并且您不希望必须定位每个单独的跨度。以下行可行:
$('#bottomDisplay span').empty();