我创建了一个包含结果集值的列表,其中每个列元素与' ::'分隔开来。使用下面给出的java代码超过50行。(arr1是数组列表,temp是字符串)
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>
但问题是这个迭代不会停止,直到列表中的值结束。 由于我在打印页面中使用此表,因此有多个页面。因此第二页仅在填充第一页的整个部分之后才会出现。 有没有办法使用此方法限制页面中的行数。
答案 0 :(得分:0)
您可能想知道需要在视图上呈现多少行。您可以使用URL中的参数将其返回到子列表/子阵列值的操作,然后再将它们返回到视图。
在多个页面上拆分数组/列表,称为分页。如果您需要了解有关此功能的更多信息,请阅读this回答。
答案 1 :(得分:-1)
您可以尝试使用以下内容。 状态变量的索引属性。
<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>