簡體   English   中英

struts2和Jquery

[英]struts2 and Jquery

我正在使用Jquery在JSP表中動態添加表中的行,並希望在Struts2操作列表中發送該表數據(例如)

下面是用於動態添加行的代碼,如下面的Link所示:

如何對附加刪除表-行-動態使用,jquery的

我想將此表數據發送到Employee對象列表中的Struts 2 Action:

public class MyAction extends BaseAction {

   private List<Emp> emplList ;

   // Getters + Setters of emplList  

我嘗試使用s:iterator但它不起作用,在Action emplList.size為0(零)

有人可以建議我還是提供一些示例代碼

鑒於Emp具有使用setter和getter的namemail屬性,大概有兩種方法可以這樣做:

  1. 您修改jQuery javascript,以便添加行的最終結果將變為:
<input type="text" name="emplList[0].name"   value="Name1"/>  
<input type="text" name="emplList[0].email"  value="email1"/>
<input type="text" name="emplList[1].name"   value="Name2"/>
<input type="text" name="emplList[1].email"  value="Email2"/> 

然后,按下后提交ListEmpAction應該被填充。

該解決方案的缺點是您必須在將數據發送到服務器之前提供正確的索引 (如果在構建數據表的過程中刪除行,可能會很棘手)

  1. 為了避免索引麻煩,您可以在Action中聲明2個列表

    private List<String> names; private List<String> emails;

    在這種情況下,您的javascript的最終結果將是

<input name="names" value="name1" />
<input name="emails" value="email1" />
<input name="names" value="name2" />
<input name="emails" value="email2" />

提交后,將在服務器端填充兩個新列表( namesemails ),您可以根據這些List創建所需的Emp List

emplList.add(new Emp(names.get(i),emails.get(i))); 對於每個i

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

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