限制jsp打印页面中表格中的行数

时间:2018-01-08 05:50:41

标签: java html jsp struts2

我创建了一个包含结果集值的列表,其中每个列元素与' ::'分隔开来。使用下面给出的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>

但问题是这个迭代不会停止,直到列表中的值结束。 由于我在打印页面中使用此表,因此有多个页面。因此第二页仅在填充第一页的整个部分之后才会出现。 有没有办法使用此方法限制页面中的行数。

enter image description here

2 个答案:

答案 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>