我需要编写一个表,其中行和列以及标题是动态的。以前我用HTML和标题显示标签对表进行硬编码,以显示数据库中的详细信息。现在,由于列和标题也根据我项目中的不同要求而变化,我需要做一切动态的事情。任何有关使用内容的建议都将受到赞赏。
所以这就是我之前的做法:
<TABLE BORDER="1" CELLPADDING="3" CELLSPACING="1" style="text-align: center;">
<TR>
<TH>Header1</TH>
<TH>Header2</TH>
<TH>Header3</TH>
<TH>Header4</TH>
</TR>
<c:forEach var="i" begin="0" end="${value.getHeader1().size() - 1}">
<TR>
<TD>
${value.getHeader1().get(i)}
</TD>
<TD>
${value.getHeader2().get(i)}
</TD>
<TD>
${value.getHeader3().get(i)}
</TD>
<TD>
${value.getHeader4().get(i)}
</TD>
</TR>
</c:forEach>
</TABLE>
从上面的<table>
架构中,标头是硬编码的。现在我需要使它成为动态的,并且基于任何特定的要求和选择,我的servlet将在这样的动态行为表中查询和传递结果。
任何有关这方面的帮助都非常有用而且很棒!
答案 0 :(得分:0)
首先,从headers
变量中获取value
数组。
- 对于标头迭代,您可以从数组
获取第一个标头对象- 对于值迭代,为每个头对象执行for循环
<TABLE BORDER="1" CELLPADDING="3" CELLSPACING="1" style="text-align: center;">
<TR>
<c:forEach var="h" items="${value.getHeaders.get(0)}">
<TH>${h.title}</TH>
</c:forEach>
</TR>
<c:forEach var="headers" items="${value.getHeaders()}">
<TR>
<c:forEach var="header" items="${headers.getHeader}">
<TD>${header.value}</TD>
</c:forEach>
</TR>
</c:forEach>
</TABLE>