我正在动态地向表中添加一行。问题是浏览器在添加时似乎没有正确重排,并且所有数据都进入新行的第一个单元格,而不是分散在其中。这听起来有点奇怪,所以我在下面制作了测试用例。据我所知,该行已正确添加到正确的位置,这发生在所有浏览器(Chrome 36.0、FF 31.0、IE 11.0)中,所以我想知道我是否做错了什么......
<!doctype html>
<html>
<head>
<title>Table management page</title>
<script type="text/javascript">
var string = "<tr><td>Extra value 1</td><td>Extra value 2</td></tr>";
function addrow() {
var parser=new DOMParser();
var xml=parser.parseFromString(string,'text/xml');
var rows = xml.getElementsByTagName('tr');
document.getElementById('table_data').appendChild(rows[0]);
}
</script>
</head>
<body>
<table id="datatable">
<thead>
<tr><th>Column 1</th><th>Column 2</th></tr>
</thead>
<tbody id="table_data">
<tr><td>Value 1</td><td>Value 2</td></tr>
</tbody>
</table>
<input type='button' onclick='addrow();' value='Add a row' />
</body>
</html>