如何使用Prototype从下拉列表中取消选择所选值。
发件人
<select id=“mylist” MULTIPLE >
<option value=“val-1”>Value 1</option>
<option value=“val-2” SELECTED>Value 2</option>
<option value=“val-3”>Value 3</option>
</select>
要
<select id=“mylist” MULTIPLE >
<option value=“val-1”>Value 1</option>
<option value=“val-2”>Value 2</option>
<option value=“val-3”>Value 3</option>
</select>
感谢您提前提供任何帮助。
答案 0 :(得分:11)
我不确定如何在原型中执行此操作,但我可以在JavaScript中执行此操作。
对于常规选择,请设置yourSelectElement.selectedIndex = -1
。
对于多重选择,您可以在所选项目上 ctrl + 单击,但您也可以以编程方式执行此操作。见链接。
答案 1 :(得分:2)
你不能:你必须添加一个空选项
<option></option>
然后
$$("#mylist option[selected]")[0].selected = false;
$$("#mylist option")[0].selected = true;
答案 2 :(得分:2)
如果选择了第二个清单......
Event.observe('secondlist', 'change', function(){
if (this.selectedIndex >= 0)
$$('#mylist option[selected]').invoke('writeAttribute', 'selected', false);
});
答案 3 :(得分:1)
我发现以下代码效果很好:
var options = $$('select#mylist option');
var len = options.length;
for (var i = 0; i < len; i++) {
options[i].selected = false;
}