是否可以使用Javascript知道HTML表格中单元格的内容类型?

时间:2014-06-03 09:15:06

标签: javascript html

我需要在Javascript中将HTML表的内容存储在数组中。 为此,我想知道每个单元格的内容类型(文本/下拉/输入框),然后才能访问单元格的内容,以便我可以相应地访问单元格值。 请指导我如何事先了解内容类型。

2 个答案:

答案 0 :(得分:0)

您可以使用

<table>
    <tr>
        <td><input type="text" id="something"></td>
        <td><select id="something_else"></select></td>
    </tr>
</table>

document.getElementById("something").tagName;
//returns: input

document.getElementById("something_else").tagName;
//returns: select

答案 1 :(得分:0)

尝试这样的事情

function getValue(cell) { //cell is a ref to table.cell
   var child = cell.firstChild;
   if(cell.childNodes.length > 1) {//how do you define value for multiple?
      console.log('Multiple children not supported');
      return;
   }

   if(child.nodeType === 3) { //text node
      return child.textContent;
   }
   if(child.nodeType === 1) { //elements
      switch (child.tagName) { //implement behaviour based on node's tagName
          case 'INPUT': return child.value;
          case 'SELECT': return child.options[child.selectedIndex].value;
          default: return child.innerHTML; //?
      }
   }
}