很明显我是一个白痴 - 我的JS上面有一个错误在这个代码之上 - 抱歉打扰 - 以下所有形式都是正确的...(我也选择了一个在IE中工作是正确的答案)..感谢您的帮助!!
- 仅限代表性代码 - 我需要知道如何更改tablerow的innerhtml -
<html>
<head>
<script> //full javascript declaration - function call after page loads..
function ()
{
document.getElementById('tr1').innerHTML='<td>Test</td>'; // does not work..
document.getElementByTagNames('tr')[0].innerHTML='<td>Test</td>'; // does not work..
document.getElementById('div2').getElementsByTagNames('tr')[0].innerHTML='<td>Test</td>'; //does not work..
document.getElementById('div1').div2.tr1.innerHTML='<td>Test</td>'; //nope
}
</script>
</head>
<body>
<div id='div1'>
<div id='div2'>
<table>
<tr id='tr1'></tr>
</table>
</div>
</div>
</body>
</html>
让我澄清一下......我有400行HTML / JS / Jquery代码是动态生成的,因此我将简化为有问题的部分
当身体加载时调用此函数:
function loadinitialData()
{
$('#tabs').tabs();
document.getElementById('tr0').innerHTML = '<td>John Doe</td><td>3.988000</td><td>Candidate Doe</td>';
document.getElementById('tr1').innerHTML = '<td>Jane Doe</td><td>5.796000</td><td>Candidate Doe</td>';
}
这是在身体:
<div id="tabs" class="ui-corner-top">
<ul>
<li><a href="#tabs-1">Some Idiots</a></li>
<li><a href="#tabs-2">Other Idiots</a></li>
</ul>
<div id="tabs-1">
<table width="590px" cellpadding="4px" rules="groups" frame="void" bordercolor="white">
<tr><td>Name</td><td>Time Taken</td><td>Something</td></tr>
<tbody>
<tr style='font-size:12px' id='tr0'></tr><tr style='font-size:12px' id='tr1'></tr></tbody></table></div>
<div id="tabs-2">Phasellus mattis tincidunt nibh. Cras orci urna, blandit id, pretium vel, aliquet ornare, felis. Maecenas scelerisque sem non nisl. Fusce sed lorem in enim dictum bibendum.</div>
</div>
PS:使用jquery选项卡,但这不是问题..
Per @Gero我尝试了以下方法: 将所有加载更改为:
document.getElementById('tablet10').rows[0].cells[0].innerHTML = 'John Doe';
document.getElementById('tablet10').rows[0].cells[1].innerHTML ='3.988000';
document.getElementById('tablet10').rows[0].cells[2].innerHTML ='Candidate Doe';
Blah Blah - 其他所有人......
在体内
<div id="tabs-1">
<table id="tablet10" width="590px" cellpadding="4px" rules="groups" frame="void" bordercolor="white">
<tr><td>Name</td><td>Time Taken</td><td>Something</td></tr>
<tbody>
<tr style='font-size:12px'><td></td><td></td><td></td></tr><tr style='font-size:12px'><td></td><td></td><td></td></tr></tbody></table></div>
Per @plodder loading:
document.getElementById('tr0').insertCell(0).innerHTML = 'John Doe';
document.getElementById('tr0').insertCell(1).innerHTML ='3.988000';
document.getElementById('tr0').insertCell(2).innerHTML ='Candidate Doe';
其余的等等等等。
和身体:
<div id="tabs-1">
<table width="590px" cellpadding="4px" rules="groups" frame="void" bordercolor="white">
<tr><td>Name</td><td>Time Taken</td><td>Something</td></tr>
<tbody>
<tr style='font-size:12px' id='tr0'></tr><tr style='font-size:12px' id='tr1'></tr></tbody></table></div>
答案 0 :(得分:0)
答案 1 :(得分:0)
“除了以下所有对象的属性都是可读/写的,它是只读的:COL,COLGROUP,FRAMESET,HEAD,HTML,STYLE,TABLE,TBODY,TFOOT,THEAD,TITLE,TR。”
“可以使用DHTML表达式代替前面的值。”
答案 2 :(得分:0)
代码将在IE中失败,因为TR.innerHTML在IE中不可写
您应该将DOM API用于表行
document.getElementById('tr1').insertCell(myCell);