2011-11-01 32 views
0
cells=document.getElementsByClassName('assetAction'); 
var selectedDropdown=document.getElementsByClassName('assetSelected'); 
for(var j = 0; j < cells.length; j++) { 
    selectedDropdown[j].value = 'Change'; 

}选择标签没有得到,即设置select.value在javascript

上面的JavaScript代码。 我正在设置一个重复行的选择标记。

<td class="assetAction"> 
    <select class="assetSelected"> 
     <option>Select</option> 
     <option>Change</option> 
     <option>Disconnect</option> 
     <option>Renew</option> 
     <option>Add Feature</option> 
    </select> 
</td> 

有些在这种格式。也有多个这样的选择。我有一个操作,在点击时设置“更改”选项。 上面的代码在Firefox中工作,但不在IE中。 我错过了什么? 早些时候我使用td名称,现在选择我将所有内容都改为class。

+0

你可以找到错误的行?..尝试提醒像cell.length或selectedDropdown.length结果。 – Kris

+0

哪个IE版本?你知道你在比较苹果和香蕉吗?您正在遍历每个选项元素,并在达到单元格数量时停止。 –

+0

getElementsByClassName不能在IE中工作,所以你可以使用getElementById或getElementsByTagName之类的东西,然后循环并获取你的选择标签? – Marwan

回答

0
cells=document.getElementsByClassName('assetAction'); 
var selectedDropdown=document.getElementsByClassName('assetSelected'); 
for(var j = 0; j < cells.length; j++) { 
selectedDropdown[j].options[2].selected=true;} 

你能试试吗?

或也

selectedDropdown[j].options[2].selected="selected"; 

不知道语法

+0

另外我不太确定getElementsByClassName与IE的兼容性。但是,getElementById或Name完全适用。 – Kris

+0

名称肯定没有工作我第一次尝试它的名字,这就是我改变一切的原因上课。 ID可能会起作用,但我正在动态创建自己的HTML表格,并且使用独特的ID也可以使用不那么灵活的专有语言来制作HTML表并不复杂。 – VBelawa1

+0

selectedDropdown [j] .options [2] .selected = true;在 中工作检查几件事情。我也想读取所选索引的值,而不必阅读innerhtml。 – VBelawa1

相关问题