将新列添加到没有表id的HTML表

时间:2016-07-28 08:05:30

标签: javascript html html-table

如何在下面的代码中添加新列, 如果没有表id或tr id或td id,我需要这样做。

请检查并告诉我

<p>Click the button to insert new cell(s) at the beginning of the table row.</p>

<table>
  <tr>
    <td>First cell</td>
    <td>Second cell</td>
    <td>Third cell</td>
  </tr>
</table><br>

<button onclick="myFunction()">Try it</button>

<script>
function myFunction() {
    var row = ??????????????
    var x = row.insertCell(0);
    x.innerHTML = "New cell";
}
</script>

3 个答案:

答案 0 :(得分:1)

您可以使用getElementsByTagName访问表格。

var row = document.getElementsByTagName("table")[0].rows[0];

https://jsfiddle.net/4rmt4xmj/1/

答案 1 :(得分:0)

@ a.u.b使用var row = document.getElementsByTagName("table")[0].rows[0];提供的答案很好,但我想提及使用XPath的替代方法。

您可以检查元素,然后选择该表并右键单击 - &gt;复制 - &gt; 复制XPath

然后,您可以使用以下代码获取所需的元素:

var elementTable = document.evaluate( '/html/body/table' ,document, null, XPathResult.FIRST_ORDERED_NODE_TYPE, null ).singleNodeValue;
if (elementTable != null) {
  //do something
}

这是JsFiddle Demo

答案 2 :(得分:0)

试试这个

&#13;
&#13;
				function myFunction(){
					var row = document.getElementsByTagName("table")[0].rows[0];
					var x = row.insertCell();
					x.innerHTML = "Last";
				}
		
&#13;
	<table border="1">
			<tr>
				<td>First</td>
				<td>Second</td>
				<td>Third</td>
			</tr>
		</table>
		<br /><br />
		<button onclick="myFunction()">Try it</button>
&#13;
&#13;
&#13;