簡體   English   中英

JSP打印頁面限制表中的行數

[英]Limit the number of rows in a table in JSP print page

我創建了一個帶有結果集值的列表,其中每個列元素用::和超過 50 行使用下面給出的 java 代碼分隔。( arr1是數組列表, tempString

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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM