以我的形式
<div class="container">
<select name="sel1">
<option value="0">0</option>
<option value="1">1</option>
<option value="2">2</option>
</select>
<select name="sel2">
<option value="0">Zero</option>
<option value="1">One</option>
<option value="2">Two</option>
</select>
</div>
<input type="button" onclick="resetAll()" value="Reset"/>
我需要将 sel1,sel2 重置为默认值。即 selectedIndex = 0;
function resetAll()
{
//what should i write here to do this
}
我有20多个选择框。有什么帮助吗?
答案 0 :(得分:0)
试试这个,这适用于任意数量的drop downs
function resetAll()
{
var selects = document.getElementsByTagName('select');
var len = selects.length;
for(var i=0; i<len; i++){
selects[i].selectedIndex=0;
}
}
演示:http://jsfiddle.net/LAaRv/1/
<强>更新强>
如果你只想重置“sel1”和“sel2”,那就试试吧,
function resetAll()
{
var selects = document.getElementsByTagName('select');
var len = selects.length;
for(var i=0; i<len; i++){
if(selects[i].name == "sel1" || selects[i].name == "sel2"){
selects[i].selectedIndex=0;
}
}
}
答案 1 :(得分:0)
只需在容器项中添加一个id,即可轻松引用它。这样您只需重置驻留在其中的选择框,而不是您在页面上可能拥有的任何其他选项框:
function resetAll() {
var container = document.getElementById('container');
var children = container.getElementsByTagName('select');
for (var i = 0; i < children.length; i++) {
children[i].selectedIndex = 0;
}
}
答案 2 :(得分:0)
简单地不使用任何for循环 -
第一个指数 -
$("select").each(function() { this.selectedIndex = 0 });
空选 -
$("select").each(function() { this.selectedIndex = -1 });
答案 3 :(得分:-1)
试试这个
var secondCombo = document.getElementsByName("sel1")[0];
secondCombo.value = 0;