2017-03-22 106 views
1

在.jsp文件中,迭代userList和標題列表。標籤的id屬性包含列表中存在的數據的一個實例。這個id用在java腳本中以實現應用程序邏輯。Struts2將JSP導出到Excel

<logic:iterate id="a" name="ExcelForm" property="userList"> 
       <tr> 
       <logic:iterate id="b" name="ExcelForm" property="header"> 

        <td> 
         String a = (data.get(header) instanceof String)? ((String) data.get(header)) : (((String[])data.get(header)).length > 1000 ? ((String[])data.get(header))[1000] : ""); 

          .... 

%> 
        </td> 
       </tr> 
      </logic:iterate> 

有必要將其轉換爲Struts2的,但我不知道我怎麼可以使用OGNL變量的小腳本。

<s:iterator var="a" value="%{userList}"> 
       <tr> 
       <s:iterator var="b" value="%{header}"> 

        <td> 
         String a = (data.get(header) instanceof String)? ((String) data.get(header)) : (((String[])data.get(header)).length > 1000 ? ((String[])data.get(header))[1000] : ""); 

          .... 

%> 
        </td> 
         </s:iterator> 
       </tr> 
      </s:iterator> 

回答

1

可以使用s:set tag創建在指定的範圍的變量(由缺省操作範圍),並分配給它一個值作爲OGNL表達評價的結果。

<s:set var="a" value='%{(data.get(header) instanceof String)? ((String) data.get(header)) : (((String[])data.get(header)).length > 1000 ? ((String[])data.get(header))[1000] : "")}'/>