我的下拉html说看起来像这样
<select id="models" ">
<option id = "remove" value="">--Select--</option>
<option id = "remove" value="0">R8</option>
<option id = "remove" value="1">Quattro</option>
<option id = "remove" value="2">A6 hatchback</option>
</select>
我知道如何从下拉列表中删除所有条目,并按照以下代码再次添加新数据。
$.getJSON('@Url.Action("YourUrl")',function(data){
var dropdown=$('#models');
dropdown.empty();
$.each(data, function (index, item) {
dropdown.append(
$('<option>', {
value: item.valueField,
text: item.DisplayField
}, '</option>'))
}
)});
但我想知道在从下拉菜单中删除所有其他项目时如何保留此行<option id = "remove" value="">--Select--</option>
?
感谢
答案 0 :(得分:7)
首先,不要复制id
值(这会导致JavaScript混淆),但您可以使用class
es。其次,你可以使用:
$("option:not(:first)").remove();
另请注意,您没有正确关闭代码:
<select id="models" ">
<!------------------^ remove this
<强>段强>
$(function () {
$("#models").find("option:not(:first)").remove();
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
<select id="models">
<option value="">--Select--</option>
<option value="0">R8</option>
<option value="1">Quattro</option>
<option value="2">A6 hatchback</option>
</select>
答案 1 :(得分:3)
您可以使用选择器过滤掉空字符串值的项目:
$("#models option:not([value=''])").remove();
这确保无论您的空值选项位于哪个索引,都将删除所有其他选项。
答案 2 :(得分:1)
尝试将:gt()
选择器与参数0
一起使用,将className
"remove"
替换为id
个"remove"
option
个$("#models option:gt(0)").remove()
元素
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js">
</script>
<select id="models">
<option class="remove" value="">--Select--</option>
<option class="remove" value="0">R8</option>
<option class="remove" value="1">Quattro</option>
<option class="remove" value="2">A6 hatchback</option>
</select>
&#13;
import-csv C:\MyFolde\myfile.csv | Measure-Object
&#13;