原型 - 如何从下拉列表中取消选择所选值

时间:2011-06-20 16:11:53

标签: javascript html prototypejs

如何使用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>

感谢您提前提供任何帮助。

4 个答案:

答案 0 :(得分:11)

我不确定如何在原型中执行此操作,但我可以在JavaScript中执行此操作。

对于常规选择,请设置yourSelectElement.selectedIndex = -1

对于多重选择,您可以在所选项目上 ctrl + 单击,但您也可以以编程方式执行此操作。见链接。

http://jsfiddle.net/kaleb/WxJ9R/

答案 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;
}