表格未显示

时间:2012-06-14 11:08:47

标签: javascript html-table

我希望按照我在下面的代码中显示的方式显示表格,但不会在屏幕上显示,代码仅使用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>

任何人都可以帮助找到此代码的问题吗?

1 个答案:

答案 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/