[英]Limit the number of rows in a table in JSP print page
我創建了一個帶有結果集值的列表,其中每個列元素用::
和超過 50 行使用下面給出的 java 代碼分隔。( arr1
是數組列表, temp
是String
)
int j=0;
while(resultSet11.next()){
temp=((++j)+"::"+resultSet11.getString("productname")+"::"+
resultSet11.getString("exp")+"::"+resultSet11.getString("batch")+"::"+
resultSet11.getString("qty")+"::"+resultSet11.getString("foc")+"::"+resultSet11.getString("mrp")+"::"+resultSet11.getString("rate")+"::"+
resultSet11.getString("amount")+"::"+resultSet11.getString("taxper")+"::"+resultSet11.getString("taxamount")+"::"+resultSet11.getString("nettaxamount")+"::") ;
arr1.add(temp);
rowcount++;
bean.setFirstarray(1);
}
request.setAttribute("nextpagedetails", arr1);
然后我迭代這個數組列表以使用下面的代碼在 HTML 表中獲取這些值。
<table>
<s:iterator var="stat" value='#request.nextpagedetails' >
<tr>
<s:iterator status="arr" value="#stat.split('::')" var="des">
<td>
<s:property value="#des"/>
</td>
</s:iterator>
</tr>
</s:iterator>
</table>
但問題是這個迭代不會停止,直到列表中的值結束。 由於我在打印頁面中使用此表,因此有不止一頁。 所以第二頁只有在填滿第一頁的整個部分之后才會出現。 有什么方法可以使用此方法限制頁面中的行數。
您可以使用狀態變量的 index 屬性嘗試使用以下代碼。
<table>
<s:iterator var="stat" value='#request.nextpagedetails' >
<tr>
<s:iterator status="arr" value="#stat.split('::')" var="des">
<s:if test="#arr.index <=50">
<td>
<s:property value="#des"/>
</td>
</s:if>
</s:iterator>
</tr>
</s:iterator>
</table>
可能您想知道需要在視圖上呈現多少行。 您可以使用 URL 中的參數將子列表/子數組值返回到視圖之前傳遞給操作。
在多個頁面上拆分數組/列表稱為分頁。 如果您需要了解有關此功能的更多信息,您可以閱讀此答案。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.