我想创建一个提供书号的动态表,接受它的书号。在上一页输入的书籍数量。但是我什么也没得到。
这是我的代码:
<table>
<c:forEach begin="1" end= "${ no }" step="1" varStatus="loopCounter">
<tr>
<td>
<input type='text' name="isbn" placeholder="ISBN">
</td>
<td>
<input type="text" name="Title" placeholder="Title">
</td>
<td>
<input type="text" name="Authors" placeholder="Author">
</td>
<td>
<input type="text" name="Version" placeholder="Version">
</td>
</tr>
</c:forEach>
</table>
$ {no}是我要输入的书数。我刚来这地方。抱歉,标题不清楚。请帮助。
您没有得到任何东西,因为您没有迭代书籍清单。另外,每次迭代仅打印很多<input type="text" />
。您的代码应如下所示(假设您的书籍清单为lstBooks
并且已经初始化):
<table>
<!-- here should go some titles... -->
<tr>
<th>ISBN</th>
<th>Title</th>
<th>Authors</th>
<th>Version</th>
</tr>
<c:forEach begin="1" end= "${ no }" step="1" varStatus="loopCounter"
value="${lstBooks}" var="book">
<tr>
<td>
<c:out value="${book.isbn}" />
</td>
<td>
<c:out value="${book.title}" />
</td>
<td>
<c:out value="${book.authors}" />
</td>
<td>
<c:out value="${book.version}" />
</td>
</tr>
</c:forEach>
</table>
根据注释了解了您的问题之后,请确保${no}
变量可用。您可以使用脚本(但这是request.getAttribute("no")
)或仅使用bad idea进行测试。
请注意,正如我已经说过的,该变量应该可以通过<c:out value="${no}" />
访问,请勿将其与request.getAttribute
混淆。
顺便说一句,如果您知道像这样的值,则可以设置一个变量:
request.getParameter
然后您可以使用<c:set var="no" value="10" />
访问它。
更多信息:${no}
假设您已在“雇员”下给出了地图JSTL Core Tag的列表
List<Map<String, Object>>
<caption>Emplyess Under You</caption>
<tr>
<th>Employee Id</th>
<th>First Name</th>
<th>Last Name</th>
<th>Designation
</tr>
<c:forEach var="record" items="${underEmployees}" >
<tr>
<c:forEach var="entry" items= "${record}">
<th><c:out value="${entry.value}"></c:out></th>
</c:forEach>
</tr>
</c:forEach>