0

如果计算在表标记之后,我如何表示 JSP 中表中的 ID 总和?

我有一个带有 JSP servlet 和 Java 的 webproject。我的项目中有一个这样的 JSP 页面:

CountID: 
id | name |

我的 JSP 代码如下所示:

<table>
 <tr>
     <td>ConutID <%=lintcount%></td>
 </tr>
</table>
<table>
  for(int i=0; i<lobjList.size(); i++){
    Issue lobjIssue=(Issue)lobjList.get(i);
   if(lobjIssue.projectID = 1){
     lintcount++;
    }
 <tr>
         <td>ID</td>
         <td>name</td>
 </tr>
 <tr>
        <td>lobjIssue.ID</td>
        <td>lobjIssue.Name</td>
 </tr>
</table>
}      

我的问题是:我想在我的 JSP 中在 countID 之后写入 ID 的总和。但我计算了 for 循环中的 ID 总和。然后我知道了ID的结果。但我想在我的 HTML/JSP 顶部表示 id 的总和。但是在我的 JSP 的顶部,我没有价值。

4

2 回答 2

0

你为什么不把 lobjList.size()

您的代码应该在循环后为 lintcount 提供相同的值(如果您没有语法错误)

<td>ConutID <%=lobjList.size()%></td>

否则循环计数到第一个表之上

for(Issue lobjIssue: lobjList){
   if(lobjIssue.projectID == 1){
     lintcount++;
    }

<table>
 <tr>
     <td>ConutID <%=lintcount%></td>
 </tr>
</table>
<table>
  for(int i=0; i<lobjList.size(); i++){
    Issue lobjIssue=(Issue)lobjList.get(i);

 <tr>
         <td>ID</td>
         <td>name</td>
 </tr>
 <tr>
        <td>lobjIssue.ID</td>
        <td>lobjIssue.Name</td>
 </tr>
</table>
} 
于 2013-07-01T13:39:12.583 回答
0

不要在 JSP 中嵌入 Java;效果不好。而是使用 JSTL 标记。此外,将 id 值相加似乎没有用。我假设你的意思是计数。

<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>
<%@ taglib uri="http://java.sun.com/jsp/jstl/functions" prefix="fn" %>

<jsp:useBean id="issues" scope="request">
<table>
    <thead>
        <tr>
            <th>ID</th>
            <th>Name</th>
        </tr>
    </thead>
    <tfoot>
        <tr>
            <th colspan="2">
                ${fn:length(issues)} issues
            </th>
        </tr>
    </tfoot>
    <tbody>
        <c:forEach items="${issues}" var="issue">
            <tr>
                <td>${issue.id}</td>
                <td>${issue.name}</td>
            </tr>
        </c:forEach>
    </tbody>
</table>

我假设实例变量名称是标准的idname. 我没有注意到项目 id 1 对您的重要性;我认为您应该在 Java 端进行该处理。有一个Issues对象,它包含一个List<Issue>对象并有一个方法getMasterProjectCount() 相应地更改上面的 JSTL JSP。

于 2013-07-01T15:04:09.907 回答