如何从选择框中删除项目或向其中添加项目?我正在运行jQuery,这应该使任务更容易。下面是一个示例选择框。
<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的选择框操作插件对于这类事情很有用。
您可以轻松地按索引、值或正则表达式删除项。
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(/./);。
JavaScript
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
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>
$(" #选择框选择”(value = ' option1 ']) .remove ();
$(" #选择框”)。追加(“<选项值= " option1 " >选项> < /选项”);
当你想从选择框中完全删除和添加选项时,你可以使用这段代码
<select name="selectBox" id="selectBox">
<选项值= " option1 " > option1 > < /选项
<选项值= " option2 " > option2 > < /选项
<选项值= " option3 " > option3 > < /选项
<选项值= " option4 " > option4 > < /选项
< /选择>
$(" #选择框选择”(value = ' option1 ']) hide ();
$(" #选择框选择”(value = ' option1 ']),告诉();
有时我们需要隐藏和显示选项从选择框,但不删除,然后你可以使用这段代码
<select name="selectBox" id="selectBox">
<选项值= " option1 " > option1 > < /选项
<选项值= " option2 " > option2 > < /选项
<选项值= " option3 " > option3 > < /选项
<选项值= " option4 " > option4 > < /选项
< /选择>
$(' #选择框:选择').remove ();
$(" #选择框选择:选择”).remove ();
有时需要从选择框中删除选中的选项
<select name="selectBox" id="selectBox">
<选项值= " option1 " > option1 > < /选项
<选项值= " option2 " > option2 > < /选项
<选项值= " option3 " > option3 > < /选项
<选项值= " option4 " > option4 > < /选项
< /选择>
(“#选择框”)空虚();
当你需要删除所有选项,然后这段代码
<select name="selectBox" id="selectBox">
<选项值= " option1 " > option1 > < /选项
<选项值= " option2 " > option2 > < /选项
<选项值= " option3 " > option3 > < /选项
<选项值= " option4 " > option4 > < /选项
< /选择>
$(' #选择框');(选项:首先).remove ();
$(' #选择框');(选项:去年).remove ();
当需要第一个选项或最后然后这段代码
<select name="selectBox" id="selectBox">
<选项值= " option1 " > option1 > < /选项
<选项值= " option2 " > option2 > < /选项
<选项值= " option3 " > option3 > < /选项
<选项值= " option4 " > option4 > < /选项
< /选择>