使用for循环生成HTML表格

4
请帮忙处理以下场景 ->
我想在表格中以一种方式显示从1到30的数值,使得1、2、3等数字在一个标签中显示,4、5、6等数字在另一个标签中显示,以此类推,直到30。我想使用表格来显示元素中的数值,其中每个值如“1”应在一个<TD> 中显示,如“2”应在不同的<TD> 中显示,依此类推。
我的意思是,值“1”应在<Table> 标签的单个<TD> 中显示,值“2”应在另一个<td> 标签中显示,以此类推,每三个连续的<TD> 后应使用一个<Tr>。输出应如下所示 ->
1 2 3 
4 5 6
7 8 9

希望能尽早得到回复。谢谢。

我已经尝试了以下给出的代码,

等等!

<script type="text/javascript">

    document.write("        <table width='673' align='center' cellpadding='2' cellspacing='1'>");
    document.write("            <tr>");
    document.write("    <td valign = 'top'>");
    document.write("                </td>");

    document.write("            </tr>");

    var cnt = 0;
    for (var idx = 1; idx <= 30; idx++) 
    {
        cnt = cnt + 1;
        document.write("            <tr>");
            document.write("    <td valign = 'top'>");
            document.write("        <table width='100px' align='center' cellpadding='2' cellspacing='1'>");
            document.write("            <tr>");
            document.write("                <td align='center'>");
            document.write("                   " + idx + "");
            document.write("                </td>");
            document.write("            </tr>");
            document.write("            <tr>");
            document.write("                <td class='label'>");
            document.write("                    <span> name part : " + idx + "</span>");
            document.write("                </td>");
            document.write("            </tr>");
            document.write("            </table>");
            document.write("                </td>");
            if (cnt = 3) 
            {
                document.write("            </tr>");
            }
            if (cnt = 3) {
                cnt = 0;
            }

        }

    document.write("            </table>");
</script>

你不是刚在 http://stackoverflow.com/questions/9751799/generate-dynamic-html-using-for-loop 发布了同样的问题吗? - j08691
嗨,@j08691,这一次我已经详细解释了我的问题!由于我的早期问题没有得到答复而被关闭,所以我发布了新的问题。 - hero123
我感到困惑。请至少正确格式化您问题中的代码部分。 - Kaf
@ Kaf,还需要提供什么信息?我已经使用了JavaScript,并将其嵌入到HTML页面的头部,希望现在对您有所澄清了吗? - hero123
3个回答

10

你可以尝试这样做:

var mytable = "<table cellpadding=\"0\" cellspacing=\"0\"><tbody><tr>";

for (var i = 1; i < 31; i++) {
  if (i % 3 == 1 && i != 1) {
    mytable += "</tr><tr>";
  }
  mytable += "<td>[" + i + "]</td>";
}

mytable += "</tr></tbody></table>";

document.write(mytable);

这里有一个jsFiddle演示


1

以下是未经测试的伪代码,但可能会帮助您入门:

var x, row;
for(x=1;x<10;x=x+row)
{
    document.write('<tr>');
    for(row=0;row<2;row++)
    {
        document.write('<td>' + (x + row));
        // Whatever else you want to output
    }
}

编辑:在问题补充了额外信息之前,本回答已经给出。


0

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接