2014-02-06 36 views
0

想要以表格形式顯示數據的時候,點擊添加按鈕一個接一個地在表格中添加。只使用struts 2而不是Ajax和Jquery。如何用struts在表格中逐一添加

home.jsp 

    <%@ page language="java" contentType="text/html; charset=UTF-8" 
     pageEncoding="UTF-8"%> 
     <%@ taglib prefix="s" uri="/struts-tags"%> 
    <%@ taglib prefix="sx" uri="/struts-dojo-tags"%> 
    <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> 
    <html> 
    <head> 

    </head> 
    <body> 
    <table> 
        <tr> 
         <td><s:textfield label="Sainumber" 
           name="stockcreationbean.sainumber" /></td> 

         <td><table><tr><td><sx:datetimepicker 
           name="stockcreationbean.saidate" displayFormat="MM-dd-yy" 
           label="SaiDate" /></td></tr></table></td> 

         <td><s:textfield label="Challan" 
           name="stockcreationbean.challan"></s:textfield></td> 

         <td><table><tr><td><sx:datetimepicker name="stockcreationbean.challandate" 
           displayFormat="MM-dd-yy" label="ChallanDate"></sx:datetimepicker></td></tr></table></td> 
        </tr> 
        <tr> 
         <td><s:textfield label="BillNumber" 
           name="stockcreationbean.billnumber"></s:textfield></td> 
         <td><table><tr><td><sx:datetimepicker name="stockcreationbean.billdate" 
           displayFormat="MM-dd-yy" label="BillDate"></sx:datetimepicker></td></tr></table></td> 

         <td><s:textfield name="stockcreationbean.ponumber" 
           label="PoNumber"></s:textfield></td> 
         <td><table><tr><td><sx:datetimepicker name="stockcreationbean.podate" 
           displayFormat="MM-dd-yy" label="PoDate"></sx:datetimepicker></td></tr></table></td> 
        </tr><tr><td><s:textfield name="stockcreationbean.filenumber" 
           label="FileNumber"></s:textfield></td> 
        </tr> 
       </table> 
    <table> 
    <s:iterator value="toparraylist"> 
       <tr> 
       <s:iterator value="tablelist"> 
        <td><s:property value="saidate"/></td> 
       </s:iterator> 
       </tr> 
       </s:iterator> 
     </table> 
     <s:submit value="Submit" onclick="formSubmit(this.form)"></s:submit> 

    </body> 
    </html> 

這是我們可以使用數組列表中添加數據的動作類。一是本地數組列表和其他然後全局數組列表調用getData()方法,當我們點擊添加按鈕,然後添加本地的ArrayList對象global arraylist object

DisplayAction.java 

    public class DisplayAction extends ActionSupport { 
     ArrayList<Object> toparraylist = new ArrayList<Object>(); 
      public String execute() { 
       return "success"; 
      } 
     public String getData() throws NamingException, Exception { 

       ArrayList<Object> tablelist=new ArrayList<Object>(); 


       tablelist.add(stockcreationbean); 
       toparraylist.add(tablelist); 
       return "success"; 
      } 

     public ArrayList<Object> getToparraylist() { 
       return toparraylist; 
      } 
      public void setToparraylist(ArrayList<Object> toparraylist) { 
       this.toparraylist = toparraylist; 
      } 


     } 
+1

麥克 - 你可以嘗試格式化您的文章?它會幫助正在閱讀你的問題的人們。 – jww

+0

要在Struts2中使用jQuery Ajax,您應該使用相應的插件。 –

回答

0

@Mack Struts 2是一個java的服務器端框架。如果我解碼您的需求,它會告訴我您要更新table(at client)上的內容,並通過使用struts 2(at server)逐一更新。

Ajax完全符合您的要求,並且是您的要求的唯一解決方案,因爲更新表是對服務器的異步調用。