具有 5 行和 5 列的 HTML 表格 [关闭]

Posted

技术标签:

【中文标题】具有 5 行和 5 列的 HTML 表格 [关闭]【英文标题】:HTML Table with 5 rows and 5 columns [closed] 【发布时间】:2016-02-23 19:57:51 【问题描述】:

如何创建一个 5 行 5 列的 html 表格?

我尝试了以下安排

<table  border="1">
  <tr>
    <td>&nbsp;</td>
    <td>&nbsp;</td>
    <td>&nbsp;</td>
    <td>&nbsp;</td>
    <td>&nbsp;</td>
  </tr>
  <tr>
    <td>&nbsp;</td>
    <td>&nbsp;</td>
    <td>&nbsp;</td>
    <td>&nbsp;</td>
    <td>&nbsp;</td>
  </tr>
  <tr>
    <td>&nbsp;</td>
    <td>&nbsp;</td>
    <td>&nbsp;</td>
    <td>&nbsp;</td>
    <td>&nbsp;</td>
  </tr>
</table>

但我只得到 5 列和 3 行。请帮忙

谢谢,有没有比每行写 5 行更简单的方法?

【问题讨论】:

您可以使用 javascript 和 for 循环来创建 n 列/行。 这个问题不是题外话!正如 Simo 指出的,答案是使用 Javascript。提问者可能没有意识到这一点。这已经不是小问题了:facebook.com/ProgrammersCreateLife/photos/… @DavidI.Samudio :很抱歉,我没看清你的意思。请你澄清一下好吗? 嗨@Yuriko,这个问题被关闭的原因是无关紧要的:“这个问题是由无法再复制的问题或简单的印刷错误引起的......”。潜在的问题是提问者只知道 HTML 并且直觉上正在寻找一种程序化的方法,在这种情况下是 JS,但他/她并没有意识到这一点。也许,这个问题与拖钓混淆了,但没有进行任何讨论,怀疑的好处也没有占上风。说明对初学者提问的容忍度真的很低。 有趣的是,它在 Facebook 上获得了很大的关注,很多用户对这个问题做出了反应,并批评社区缺乏对新人的支持。 【参考方案1】:

TL;DR:您只提供了 3 个 &lt;tr&gt; 标记,因此您只有 3 行。

在 HTML 中,表格具有以下基本结构1

table
|- row_1
|  |- data_1
|  `- data_2
|- row_2
|  |- ...
...

1 - 存在其他标记,例如 ththead 等,但为了清楚起见,我将忽略它们。 More info here. (MDN Table element)

您首先使用&lt;table&gt; 标记声明表,然后使用&lt;tr&gt; 标记声明行。 (t能够row。) 在每一行中,您可以声明数据容器&lt;td&gt;。 (t能够data)。

下面是一段 HTML 代码,用于创建一个 5 列 5 行的表格:

table 
  border-collapse: collapse;


table td 
  border: 1px solid black;
<table>
  <tr>
    <td>row_1/col_1</td>
    <td>col_2</td>
    <td>col_3</td>
    <td>col_4</td>
    <td>col_5</td>
  </tr>
  <tr>
    <td>row_2</td>
    <td></td>
    <td></td>
    <td></td>
    <td></td>
  </tr>
  <tr>
    <td>row_3</td>
    <td></td>
    <td></td>
    <td></td>
    <td></td>
  </tr>
  <tr>
    <td>row_4</td>
    <td></td>
    <td></td>
    <td></td>
    <td></td>
  </tr>
  <tr>
    <td>row_5</td>
    <td></td>
    <td></td>
    <td></td>
    <td></td>
  </tr>
</table>

【讨论】:

【参考方案2】:

&lt;tr&gt; 是表格行的缩写。你只有 3 行,所以你只会得到 3 行而不是 5 行。再添加 2 行。

编辑:添加了一些 javascript。

let table = document.getElementById("table");

//fake data
const contentList = [
   //row1
   [title: "title",title: "title",title: "title"],
   //row2
   [title: "title",title: "title",title: "title"],
   //row3
   [title: "title",title: "title",title: "title"]
];

//function to generate a row.
const rowTemplate = (data, rowNumber) =>
    let rowString = "<tr>";
    data.forEach((td, index)=>
        rowString += `<td>$td.title, row: $rowNumber, column: $index</td>`;
    );
    rowString += "</tr>"
    return rowString;
;

//function to generate all the rows
const generateRows = (data, elementToPopulate) => 
    let htmlString = "";
    data.forEach((row,index)=>
        htmlString += rowTemplate(row, index);
    );
    elementToPopulate.innerHTML = htmlString;


//call method
generateRows(contentList, table);
<table  border="1" id="table">
</table>

【讨论】:

这似乎是答案的一部分,为什么它离题了?这个和一个 JS 循环(Asimo 评论)帮助新的 Web 开发人员在遇到某种障碍时了解如何编程。

以上是关于具有 5 行和 5 列的 HTML 表格 [关闭]的主要内容,如果未能解决你的问题,请参考以下文章

具有固定标题和固定列的 HTML 表格? [关闭]

html 具有固定行和列的表

使用 django html 模板创建具有动态行和列的表

如何打印具有满足范围值的列?

如何用Jquery获取Table指定行中指定列的数值

使用带有重复行和新列的 SQL Server 创建视图