我希望按照我在下面的代码中显示的方式显示表格,但不会在屏幕上显示,代码仅使用html和Javascript
<body id="page">
<center>
<table id="tables" border="1px" cellspacing="50px" style="margin-top:70px" >
<script type="text/javascript">
var row=2;
for(var j=1;j<=2;j++){
$('#tables').append("<tr id='row"+j+"' style='margin-bottom:50px'>");
for(var k=1;k<=5;k++){
$("#row"+j).append("<td id='table"+k+"' class='button' width='150' height='150' onclick='printBill("+k+")' background='images/green.png' align='center'>"+
"<font size='+8'><b>"+k+"</b></font>"+
"<br><font id='clock"+k+"' size='+1'> 0:0:0 </font>"+
"</td>");
}
$('#tables').append("<tr id='row"+j+"' style='margin-bottom:50px'>");
}
</script>
</table>
</center>
</body>
任何人都可以帮助找到此代码的问题吗?
答案 0 :(得分:1)
您可以使用两种典型的方法来修改页面加载文档:
虽然html仍在加载:
<table id="tables">
<tbody>
<script type="text/javascript">
document.write('<tr>......</tr>');
</script>
</tbody>
</table>
加载html页面后(更具体地说,当DOM准备就绪时):
<table id="tables">
<tbody>
</tbody>
</table>
<script type="text/javascript">
$(function(){ // see http://api.jquery.com/jQuery/#jQuery3
// the full DOM is ready now, you can start modifying it.
$('#tables > tbody').append('<tr>......</tr>');
});
</script>
正如您所看到的,我在tbody
及其table
之间插入了tr
标记:浏览器通常会创建此tbody
标记,即使您的来源不是&# 39;包含它。通过始终添加tbody
(或thead/tfoot
,如果您愿意),您可以避免一些潜在的麻烦。
例如,请参阅Can I rely on the implicit creation of the `tbody` tag?或搜索implicit tbody
。
我稍微清理了你的代码:http://jsfiddle.net/6332Q/1/