我已经搜索了很多这个问题的答案,但没有找到令人满意的结果。
我有这个代码:
<select name="items[]" size="0" id="feed-items-list" style="width:100%;" multiple="">
<option value="a">a</option>
<option value="b">b</option>
<option value="c">c</option>
</select>
如何删除所有选定的选项?
谢谢!
我已经搜索了很多这个问题的答案,但没有找到令人满意的结果。
我有这个代码:
<select name="items[]" size="0" id="feed-items-list" style="width:100%;" multiple="">
<option value="a">a</option>
<option value="b">b</option>
<option value="c">c</option>
</select>
如何删除所有选定的选项?
谢谢!
我知道你标记prototypejs
了 ,但我以前从未使用过它,而且使用 vanilla JS 很容易。以下是如何遍历<option>
s 并查看它们是否被选中:
var select_element = document.getElementById("feed-items-list");
var options = select_element.options;
var i = options.length;
while (i--) {
var current = options[i];
if (current.selected) {
// Do something with the selected option
}
}
演示:http: //jsfiddle.net/tFhBb/
如果您想从页面中物理删除该选项,请使用:
current.parentNode.removeChild(current);
如果要取消选择它们,请使用:
current.selected = false;
用 PrototypeJS 做到这一点(正如你标记的问题)
$('feed-items-list').select('option:selected').invoke('remove');
这将使用 CSS 选择器option:selected
在feed-items-list
. 然后调用该remove
元素上的特定方法。
如果您只想取消选择 Ian 提到的选项
$('feed-items-list').select('option:selected').each(function(i){
i.selected = false;
});