我有两个名称相同的html选择对象(它们是具有不同索引的数组)。
我想要做的是,如果从类别[0]选择元素中选择“关闭”,我想禁用类别[1]元素。我一直在尝试使用document.getElementsByName()但是我没有运气弄清楚如何专门针对类别[1]数组。请参阅下面的示例代码。
<select name='category[0]'>
<option value='0'>off</option>
<option value='1'>on</option>
</select>
<select name='category[1]'></select>
我的问题是如何修改作为数组的HTML对象的属性?我知道我可以使用ID轻松地做到这一点,但我想学习如何使用数组来做到这一点。
由于
答案 0 :(得分:3)
<强>未测试强>
<select name='category[0]'>
<option value='0'>off</option>
<option value='1'>on</option>
</select>
<select name='category[1]'></select>
<script>
var selects = document.getElementsByTagName('select');
for ( var i = 0, len = selects.length; i<l; ++i ) {
if ( selects[i].name == 'category[1]' ) {
// operate on selects[i];
// you can also rely on getAttribute('name')
}
}
</script>
答案 1 :(得分:2)
<select name='category[0]' onChange="disCat(this.value);">
<option value='0'>off</option>
<option value='1'>on</option>
</select>
<script type="text/javascript">
function disCat(val){
if(val!="0") return;
var sels=document.getElementsByTagName("select");
for(i=0;i<sels.length;i++)
{
if(sels[i].getAttribute('name')=='category[1]') sels[i].disabled=true;
}
}
</script>