我有一个HTML表格如下。我想从此表中检索行值。为了检索表行值,我编写了这个java脚本,但是这个变量的值为null,var score = comrow.cells [2] .childNodes [0] .selectedIndex;
如何正确检索下拉列表的选定值?
function adddata(tableID){
var phraseTable = document.getElementById(tableID);
var phrrowCount = phraseTable.rows.length;
for(var i=0; i<phrrowCount; i++) {
var comrow = phraseTable.rows[i];
// var comchkbox = comrow.cells[0].childNodes[0];
var comval= comrow.cells[1].childNodes[0].value;
var score = comrow.cells[2].childNodes[0].selectedIndex;
}
}
<TABLE id="dataTable" name="topkphrase" cellpadding="0" cellspacing="0" border="1">
<tbody>
<TD width="5%"><INPUT type="checkbox" name="chk"/> </TD>
<TD width="75%"><input type="text" name="txt" value="" size="100%"/></TD>
<TD width="20%">
<SELECT name="score">
<OPTION value="vimp">V.Important</OPTION>
<OPTION value="imp">Important</OPTION>
<OPTION value="avr">Average</OPTION>
</SELECT>
</TD>
</tbody>
</TABLE>
答案 0 :(得分:1)
您可以给<select>
一个id并使用getElementById,而不是尝试从表中找到<select>
对象。
var selectElement = document.getElementById(selectID);
console.log(selectElement.value);
console.log(selectElement.selectedIndex);
您还可以使用getElementByName查找名为“score”的所有select语句。
var selectElement = document.getElementByName("score")[0];
console.log(selectElement.value);
console.log(selectElement.selectedIndex);
您可能还想查看JQuery这样做,因为它可能会让您更轻松。