gpt4 book ai didi

java - 如何在jsp中显示包含从数据库返回的所有行的html表?

转载 作者:行者123 更新时间:2023-12-02 06:51:58 25 4
gpt4 key购买 nike

我有下面的 html 和 java 代码来在 html 表格中显示一行。

<table id="myTable" border="0" cellspacing="0" style="border-spacing:0; width:100%;border-collapse: collapse;">
<%
Object object = request.getAttribute("myContact");
MyModel myModel = (MyModel)object;

String mail = myModel.getmail()!=null ? myModel.getmail().toString().trim() : "";
String title = myModel.gettitle()!=null ? myModel.gettitle().toString().trim() : "";
String name = myModel.getname()!=null ? myModel.getname().toString().trim() : "";
%>

<tr>
<td class="table-border-bottom"><label for="name">Name:</label></td>
<td class="table-border-bottom"><input id="name" type="text" value='<%=name%>' name="name" class="required" style="height: 17px;"/>
</td>
<td class="table-border-bottom"><label for="contactTitle">Title:</label></td>
<td class="table-border-bottom"> <input id="title" type="text" value='<%=title%>' name="title" class="required" style="height: 17px;"/>

</td>
<td class="table-border-bottom"><label for="mail">Email:</label></td>
<td class="table-border-bottom"><input id="mail" type="text" value='<%=mail%>' name="mail" class="required email" style="height: 17px; "/>

</td>
</tr>


<tr align="center">
<td valign="bottom" colspan="6" style="height: 45px; ">
<input type="button" id="submit" name="submit" value="Save" style="width: 80px ; height:24px; text-align: center;border-radius: 10px 10px 10px 10px;"/>
<input type="button" id="revert" name="revert" value="Revert" style="width: 80px ; height:24px;text-align: center;border-radius: 10px 10px 10px 10px;"/></td>
</tr>

</table>

我从数据库中获取一行并保留在请求范围内,然后我在 jsp 中访问相同的行并显示在 html 表中,如上所示。它运行良好,没有任何问题。现在的问题是我从数据库获取行列表,然后我需要在 html 中显示为多行。另外,我必须为行的每个组件分配唯一的 id,并且还需要如上所述应用 CSS 样式。在这种情况下,我如何重复上面的循环逻辑以正确显示具有 css 样式的行列表?

谢谢!

最佳答案

不要从服务器代码发送一个对象,而是发送要显示为行列表的对象列表。

我没有测试过,请注意处理空检查。

<table id="myTable" border="0" cellspacing="0" style="border-spacing:0; width:100%;border-collapse: collapse;">
<%
List<Object> object = (List<Object>)request.getAttribute("myContact");
for(int i=0;i<object.size();i++){
MyModel myModel = (MyModel)object.get(i);
String mail = myModel.getmail()!=null ? myModel.getmail().toString().trim() : "";
String title = myModel.gettitle()!=null ? myModel.gettitle().toString().trim() : "";
String name = myModel.getname()!=null ? myModel.getname().toString().trim() : "";
%>


<tr>
<td class="table-border-bottom"><label for="name">Name:</label></td>
<td class="table-border-bottom"><input id="name" type="text" value='<%=name%>' name="name" class="required" style="height: 17px;"/>
</td>
<td class="table-border-bottom"><label for="contactTitle">Title:</label></td>
<td class="table-border-bottom"> <input id="title" type="text" value='<%=title%>' name="title" class="required" style="height: 17px;"/>

</td>
<td class="table-border-bottom"><label for="mail">Email:</label></td>
<td class="table-border-bottom"><input id="mail" type="text" value='<%=mail%>' name="mail" class="required email" style="height: 17px; "/>

</td>
</tr>

<% } %>

<tr align="center">
<td valign="bottom" colspan="6" style="height: 45px; ">
<input type="button" id="submit" name="submit" value="Save" style="width: 80px ; height:24px; text-align: center;border-radius: 10px 10px 10px 10px;"/>
<input type="button" id="revert" name="revert" value="Revert" style="width: 80px ; height:24px;text-align: center;border-radius: 10px 10px 10px 10px;"/></td>
</tr>

</table>

此外,使用 JSTL 而不是 scriptlet 会对您有所帮助。

对于行的样式,应用类似

的类

CSS

.rowClass{
/* APPLY STYLE TO ROWS */
}

关于java - 如何在jsp中显示包含从数据库返回的所有行的html表?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17926742/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com