我查看了其他一些问题,例如this one https://stackoverflow.com/questions/812693/cant-dynamically-add-rows-to-a-table-in-ie但他们没有解决这个特定问题:
当我在 IE (8) 中运行此代码时:
$("<tr><td>1</td><td>A</td></tr>").appendTo("#myTable tbody");
我最终将此 HTML 添加到表的主体中:
<TR>
1</TD><//TD>
<TD>
</TD>
A</TD><//TD></TR><//TR>
</TR>
任何想法?提前致谢。
你想要做的事情确实很难正确完成。这是因为一个<TR>
元素在 a 的范围之外没有意义<TABLE>
。虽然解释您的意图对于我们人类来说很容易,但 jQuery 很可能不够聪明,无法做到这一点,也无法做正确的事情。
这里正确的事情应该是这样的:
var tbody = document.getElementById('myTable').getElementsByTagName('tbody')[0];
var row = document.createElement('tr');
tbody.appendChild(row);
var cell = document.createElement('td');
cell.innerHTML = '1';
row.appendChild(cell);
cell = document.createElement('td');
cell.innerHTML = 'A';
row.appendChild(cell);
现在,您问题中的代码无疑更加紧凑,但这并不意味着 jQuery 需要在幕后做更少的工作才能真正实现所需的结果。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)