Answers:
删除一个选项:
$("#selectBox option[value='option1']").remove();
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<select name="selectBox" id="selectBox">
<option value="option1">option1</option>
<option value="option2">option2</option>
<option value="option3">option3</option>
<option value="option4">option4</option>
</select>
添加一个选项:
$("#selectBox").append('<option value="option5">option5</option>');
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<select name="selectBox" id="selectBox">
<option value="option1">option1</option>
<option value="option2">option2</option>
<option value="option3">option3</option>
<option value="option4">option4</option>
</select>
您可以使用以下方法删除所选项目:
$("#selectBox option:selected").remove();
如果您有列表而不是下拉列表,这将很有用。
window.onload = function ()
{
var select = document.getElementById('selectBox');
var delButton = document.getElementById('delete');
function remove()
{
value = select.selectedIndex;
select.removeChild(select[value]);
}
delButton.onclick = remove;
}
要添加项目,我将创建第二个选择框,然后:
var select2 = document.getElementById('selectBox2');
var addSelect = document.getElementById('addSelect');
function add()
{
value1 = select2.selectedIndex;
select.appendChild(select2[value1]);
}
addSelect.onclick = add;
虽然不是jQuery。
删除项目
$("select#mySelect option[value='option1']").remove();
要添加项目
$("#mySelect").append('<option value="option1">Option</option>');
检查选项
$('#yourSelect option[value=yourValue]').length > 0;
删除选定的选项
$('#mySelect :selected').remove();
我发现jQuery 选择框操作插件可用于此类事情。
您可以按索引,值或正则表达式轻松删除项目。
removeOption(index/value/regex/array[, selectedOnly])
Remove an option by
- index: $("#myselect2").removeOption(0);
- value: $("#myselect").removeOption("Value");
- regular expression: $("#myselect").removeOption(/^val/i);
- array $("#myselect").removeOption(["myselect_1", "myselect_2"]);
要删除所有选项,您可以执行$("#myselect").removeOption(/./);
。
我发现有两个页面似乎是有用的,它是为ASP.Net编写的,但是应该使用相同的内容:
只需为寻找的任何人增加此功能,您还可以:
$("#selectBox option[value='option1']").hide();
和
$("#selectBox option[value='option1']").show();
function removeOptionsByValue(selectBox, value)
{
for (var i = selectBox.length - 1; i >= 0; --i) {
if (selectBox[i].value == value) {
selectBox.remove(i);
}
}
}
function addOption(selectBox, text, value, selected)
{
selectBox.add(new Option(text, value || '', false, selected || false));
}
var selectBox = document.getElementById('selectBox');
removeOptionsByValue(selectBox, 'option3');
addOption(selectBox, 'option5', 'option5', true);
<select name="selectBox" id="selectBox">
<option value="option1">option1</option>
<option value="option2">option2</option>
<option value="option3">option3</option>
<option value="option4">option4</option>
</select>
jQuery(function($) {
$.fn.extend({
remove_options: function(value) {
return this.each(function() {
$('> option', this)
.filter(function() {
return this.value == value;
})
.remove();
});
},
add_option: function(text, value, selected) {
return this.each(function() {
$(this).append(new Option(text, value || '', false, selected || false));
});
}
});
});
jQuery(function($) {
$('#selectBox')
.remove_options('option3')
.add_option('option5', 'option5', true);
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<select name="selectBox" id="selectBox">
<option value="option1">option1</option>
<option value="option2">option2</option>
<option value="option3">option3</option>
<option value="option4">option4</option>
</select>
如果有人需要删除一个选择内的所有选项,我做了一个小小的功能。
希望对你有帮助
var removeAllOptionsSelect = function(element_class_or_id){
var element = $(element_class_or_id+" option");
$.each(element,function(i,v){
value = v.value;
$(element_class_or_id+" option[value="+value+"]").remove();
})
}
只需运行
removeAllOptionsSelect("#contenedor_modelos");
$('#contenedor_modelos').empty();
吗?很高兴见到一些动作:)
这是选择框的HTML
<select name="selectBox" id="selectBox">
<option value="option1">option1</option>
<option value="option2">option2</option>
<option value="option3">option3</option>
<option value="option4">option4</option>
</select>
当您想从选择框中完全删除并添加选项时,可以使用此代码
$("#selectBox option[value='option1']").remove();
$("#selectBox").append('<option value="option1">Option</option>');
有时我们需要在选择框中隐藏并显示选项,但不删除即可使用此代码
$("#selectBox option[value='option1']").hide();
$("#selectBox option[value='option1']").show();
有时需要从选择框中删除选择的选项,然后
$('#selectBox :selected').remove();
$("#selectBox option:selected").remove();
当您需要删除所有选项时,此代码
('#selectBox').empty();
什么时候需要第一个选项或最后一个然后此代码
$('#selectBox').find('option:first').remove();
$('#selectBox').find('option:last').remove();