使用 jquery 从选择下拉列表中删除所有条目的最简单方法是啥?

Posted

技术标签:

【中文标题】使用 jquery 从选择下拉列表中删除所有条目的最简单方法是啥?【英文标题】:what is the easiest way to remove all entries from a select dropdown using jquery?使用 jquery 从选择下拉列表中删除所有条目的最简单方法是什么? 【发布时间】:2011-09-03 09:30:50 【问题描述】:

我有一个下拉列表,我想使用 jquery 清除其中的所有项目。我看到很多关于删除所选项目的谷歌链接,但我想从下拉列表中清除所有项目。

从选择下拉列表中删除所有项目的最佳方法是什么?

【问题讨论】:

【参考方案1】:
$('#idOfDropdown option').remove();

JSFiddle Example

【讨论】:

【参考方案2】:
$('option', the_select_element).remove();

如果你想保持选中:

$('option:not(:selected)', the_select_element).remove();

在纯 JS 中也非常简单(感谢@Austin France!):

// get the element
var sel = document.getElementById("the_select_ID");
// as long as it has options
while (sel.options.length) 
  // remove the first and repeat
  sel.remove(0);

【讨论】:

简单的 JS 方法来做到这一点: var options = el.options; while (options.length) options[0].remove(); 它的工作方式有点不同:while (select_element.options.length) select_element.remove(0); 但可以。感谢您提及本机界面!【参考方案3】:

最佳方式:使用.empty()

$('select').empty();

DEMO

注意:当您想要删除元素本身以及其中的所有内容时,请使用.remove()

【讨论】:

甚至没有考虑到这一点。绝对是一种更好的方法。 是的。 empty() 是要走的路。 +1

以上是关于使用 jquery 从选择下拉列表中删除所有条目的最简单方法是啥?的主要内容,如果未能解决你的问题,请参考以下文章

从下拉列表中获取所选文本,但使用jQuery删除数值

如何防止 Jquery 可排序连接列表中的重复条目?

jQuery从下拉列表中删除一个选项,给定选项的文本/值

如何从动态填充的下拉列表中动态选择一个选项

如何使用jquery在标签中显示多选下拉列表的选定文本?

使用jQuery从下拉列表(选择框)中获取选定的ID [重复]