我现在有个产品列表页面,我想把这个页面的所有产品的价格汇总起来,来个总价格。改怎么做呢,这个页面用的是jstl标记
页面代码如下:
<c:forEach var="tousu" items="${pageBean.data}">
<td>${tousu.proname}</td>
<td>${tousu.protype}</td>
<td>${tousu.proprice}</td>
<td>${tousu.proamount}</td>
<td>${tousu.promoney}</td> //产品价格
<td align="center">${tousu.adddate}</td>
</c:forEach>
页面代码如下:
<c:forEach var="tousu" items="${pageBean.data}">
<td>${tousu.proname}</td>
<td>${tousu.protype}</td>
<td>${tousu.proprice}</td>
<td>${tousu.proamount}</td>
<td>${tousu.promoney}</td> //产品价格
<td align="center">${tousu.adddate}</td>
</c:forEach>
<td>${tousu.proname} </td>
<td>${tousu.protype} </td>
<td>${tousu.proprice} </td>
<td>${tousu.proamount} </td>
<td>${tousu.promoney} </td> //产品价格
<td align="center">${tousu.adddate} </td>
<c:set var="n" value="${n+tousu.promoney}">
</c:forEach>总价: ${n}
<c:set value="0" var="sum" />
<c:forEach var="tousu" items="${pageBean.data}">
<td>${tousu.proname} </td>
<td>${tousu.protype} </td>
<td>${tousu.proprice} </td>
<td>${tousu.proamount} </td>
<td>${tousu.promoney} </td> //产品价格
<td align="center"> ${tousu.promoney} </td>
<c:set value="${sum + tousu.adddate}" var="sum" />
</c:forEach>
while(rs2.next()){
post = new Tousu();
post.setProid(rs2.getInt("proid"));
post.setProname(rs2.getString("proname"));
post.setHtcode(rs2.getString("htcode"));
post.setProtype(rs2.getString("protype"));
post.setPromodel(rs2.getString("promodel"));
post.setProfunction(rs2.getString("profunction"));
post.setProamount(rs2.getInt("proamount"));
post.setProunit(rs2.getString("prounit"));
post.setProprice(rs2.getDouble("proprice"));
post.setPromoney(rs2.getDouble("promoney"));
post.setAdddate(rs2.getString("adddate"));
post.setAddperson(rs2.getString("addperson"));
post.setProdesc(rs2.getString("prodesc"));
double totel = 0.0;
totel = rs2.getDouble("promoney") + totel;
v.add(post);
}
该怎么传到前边去啊?
按照三楼的我出现的 结果是:产品名称 产品类型 产品单价 产品数量 产品金额 添加日期 管理操作
有任务有合同 硬件 30000.0 1 30000.0 2009-07-02 09:36:29
总金额 30000.0
施工方 软件 20000.0 2 40000.0 2009-07-02 09:36:55
总金额 70000.0
我只想让最后显示总金额 70000.0
不想显示 总金额 30000.0
该怎么办呢?
正解 set临时变量即可。
<td>${tousu.proname} </td>
<td>${tousu.protype} </td>
<td>${tousu.proprice} </td>
<td>${tousu.proamount} </td>
<td>${tousu.promoney} </td> //产品价格
<td align="center">${tousu.adddate} </td>
<c:set var="n" value="${n+tousu.promoney}">
</c:forEach>
然后最后在用el表达式表示出来就可以了。
public float getTotalPrice(){
float total = 0f;
//total = 里边算出来总价格
return total;
}页面访问
${pageBean.totalPrice}
totel = rs2.getDouble("promoney") + totel; 算的结果后把值放在while循环下面
放在request.setAttu....("totel",totel )作用域中就行了
在页面直接用El 表达式 ${totel}
这样:在action里:
request.setAttribute("total", total );
然后在页面:
$total
就OK了!呵呵!