在JSP页面中如何将列表数据按每记录一行的格式渲染为表格
你当前的写法将<c:forEach>循环写在了每个<td>内部,会把所有书籍的ID集中输出到第一个单元格、所有书名集中输出到第二个单元格,才会出现属性纵向堆叠的问题。要实现单条书籍对应一行的效果,只需要把循环放到<tr>标签外层,每次循环生成一条完整的表格行即可。
修正后的代码如下:
<table class="table"> <thead> <tr> <th scope="col">Book Id</th> <th scope="col">Book Name</th> <th scope="col">Book Author</th> </tr> </thead> <tbody> <!-- 循环放在行级别,每本图书生成一行 --> <c:forEach items="${searchedBook}" var="book"> <tr> <td>${book.book_id}</td> <td>${book.book_name}</td> <td>${book.book_author}</td> </tr> </c:forEach> </tbody> </table>
修正后每遍历到一个book对象,就会生成包含它三个属性的完整行,即可实现你需要的各属性按列排布、单条记录占一行的效果。
内容的提问来源于stack exchange,提问作者Senith Umesha
相关产品推荐
相关产品推荐

