0

我正在动态地将列表项添加到 ul

<ul>
<li>thing 1</li>
<li>thing 2</li>
<li class='colorblock'>thing 3</li>
<li class='colorblock'>thing 4</li>
<li>thing 5</li>
</ul>

在某些情况下,我需要用以下内容附上一些 li

$('.colorblock:first').before('<li>[&plusmn; </li>');
$('.colorblock:last').append('<li>]</li>');

产品如下

<ul>
<li>thing 1</li>
<li>thing 2</li>
<li>[± </li>
<li class='colorblock'>thing 3</li>
<li class='colorblock'>thing 4</li>
<li>]</li>
<li>thing 5</li>
</ul>

现在,如果我还可能需要使用以下内容删除这两个 li

$('li').filter(function() { return $.text([this]) === '[&plusmn; '; }).remove();
$('li').filter(function() { return $.text([this]) === '[± '; }).remove();
$('li').filter(function() { return $.text([this]) === ']'; }).remove();

我的问题是这些都没有正确匹配

<li>[± </li>

我已经没有关于如何严格匹配和删除该 li 的想法。有什么建议么?

4

2 回答 2

1

尝试

$('li').filter(function(){
    var txt = $.trim($(this).text());
    return txt == '[±' || txt == ']'
}).remove()

演示:小提琴

于 2013-09-27T12:40:56.340 回答
0

原来这是它所在的文件的编码问题,需要是 UTF-8

于 2013-09-27T13:37:27.643 回答