我有一个这样的列表:
<ul>
<li id="foo">foo</li>
<li id="bar">bar</li>
<li id="baz">baz
<div>more Text</div>
</li>
</ul>
我想从除最后一个列表之外的所有内容中删除文本,该列表为零索引为2
. 因为零索引是一个变量,所以我把这个变量放在一个像这样的范围内:
<span>2</span>
Jquery中的变量:
var qw = $('li:eq(' + $("span").text() + ')');
最后是删除功能:
$('body *').not(qw).contents().filter(function() {
return this.nodeType == 3;
}).remove();
问题是列表中的 div 也被删除了,但我真的很想保留它。我玩过('*')
选择器,但似乎无法将其放在正确的位置。例如这不起作用:
var qw = $('li:eq(' + $("span").text() + ')' + '*');