2013-02-27 216 views
-1

由于其中有另一个标签,因此在将div行中的行添加到表中时会出现一些问题。添加元素防止代码向表中添加新行

我知道如果我可以更改表的ID,但因为它生成了,我不能改变它们。我只能改变封装表格的div的id。

<!--Adding does not work on this table --> 
<h3>Wednesday</h3> 
<button type="button" onclick="displayResult('wed')">Insert new row</button> 
<div id="wed"> 
<strong>Even this stops it from adding</strong> <!--This is the problem --> 
<table id="myTable" border="1"> 
    <tr> 
    <td>cell 1</td> 
    <td>cell 2</td> 
    </tr> 
</table> 
<div> 

<!--Adding works on this table --> 
<h3>Thursday</h3> 
<button type="button" onclick="displayResult('thu')">Insert new row</button> 
<div id="thu"> 
<table id="myTable" border="1"> 
    <tr> 
    <td>cell 1</td> 
    <td>cell 2</td> 
    </tr> 
</table> 
<div> 

function displayResult(number) { 
    var elemList=document.getElementById(number).childNodes; 
    var table=elemList[1]; 
    var row=table.insertRow(-1); 
    var cell1=row.insertCell(0); 
    var cell2=row.insertCell(1); 
    cell1.innerHTML="New"; 
    cell2.innerHTML="New"; 
} 

Here is jsFiddle illustrating the problem I have

+0

混淆的缩写器背后是什么?请充实你的问题。 – 2013-02-27 01:28:37

+0

在这里看到一些会很高兴,但链接中的小提琴已经足够清晰,出了什么问题。 – krillgar 2013-02-27 01:29:08

+0

@krillgar,[我们喜欢一个包含所有内容的问题](http://meta.stackexchange.com/questions/149890/prevent-posts-with-links-to-jsfiddle-and-no-code),这样例如,如果链接不好,问题及其答案对未来的访问者仍然有用。 – 2013-02-27 01:30:20

回答

1

我会通过索引元素都假设得到的是什么问题(没有看到生成的表的代码,很难肯定的说),并建议,一旦你有div,你getElementsByTagName('table')[0],看看你不能从那里工作。

我也建议,你正在做的大部分工作是更容易与jQuery,如果你有能力将其添加到项目,我会推荐它。