在没有CSS类的SELECT中删除OPTION

时间:2013-08-12 16:08:03

标签: javascript jquery jquery-ui option html-select

问题:

我想删除没有特定CSS类的选择框中的选项。

技能等级

我还在学习jQuery,也许会做很长时间。

梗概:

我有一个选择框:

<select id="MySelect">
    <option class="MyClass" value="one">one</option>
    <option value="two">two</option>
    <option value="three">three</option>
    <option class="MyClass" value="four">four</option>
    <option value="five">five</option>
    <option class="MyClass" value="six">six</option>
    <option value="seven">seven</option>
</select>

所以我希望删除这些选项2,3,5和7。

我可以统计所有选项:

alert('Options Count: ' + $('#MySelect option').length);

与班级的选项:

alert('Options with class: ' + $('.MyClass').length);
// I think this will search the entire file for elements with this class. Is this so?

但我不知道如何删除拥有该类的那些。我知道有一个非常简单的解决方案,但我无法找到一种简洁的方法来实现它。

感谢您的帮助。

1 个答案:

答案 0 :(得分:5)

尝试

$('#MySelect option').not('.MyClass').remove()

您也可以将“not”测试放在选择器中,但这通常较慢(尽管它可能没有实际区别):

$('#MySelect option:not(.MyClass)').remove()