删除文本不在两个值之间的选择选项

时间:2016-01-24 13:52:31

标签: jquery

<select>
<option>1</option>
<option>3</option>
<option>5</option>
<option>10</option>
<option>35</option>
</select>

我有以下工作代码,删除选项文本小于5的所有选项:

$("#filter-group5 select option").filter(function(){
    return $.trim($(this).text()) <  5;     
}).remove();

如何修改代码以删除不在两个整数之间的所有选项(5,30)?

我尝试了以下内容:

$("#filter-group5 select option").filter(function(){
        return $.trim($(this).text()) <  5 && $.trim($(this).text()) >  30;     
}).remove();

但它不起作用。没有任何事情发生,所有选项仍然存在,即使是5岁以下的人。

1 个答案:

答案 0 :(得分:3)

  1. 您需要将innerText解析为Number。
  2. 使用||或代替`&amp;&amp;。
  3. <强>代码:

    $("#filter-group5 select option").filter(function(){
        return +$(this).text() <  5 || +$.trim($(this).text() > 30;     
    }).remove();