2011-11-04 91 views
2

我在jsp頁面中使用Struts2我有複選框的迭代器值。如何獲得行動類中的值?我正在使用JavaScript來驗證複選框。所以請幫我解決這個問題。帶迭代器的Struts2複選框

回答

3

我相信你有checkboxex像

<s:form action="myaction"> 
      <s:checkbox name="a" fieldValue="ORIGINATOR" value="%{value1}" label="A"/> 
      <s:checkbox name="a" fieldValue="EVALUATOR" value="%{value2}" label="B"/> 
      <s:checkbox name="a" fieldValue="EXECUTOR" value="%{value3}" label="C"/> 
     </s:form> 

這裏是你將如何得到的值在動作類

public class Handler extends ActionSupport{ 

     private String[] a; 

public void setA(String[] a){ 

     this.a= a; 
    } 

@Override 
    public String execute() throws Exception { 


     // use the checkbox values here 

     return Action.SUCCESS; 
    } 
} 

希望這會幫助你。

+0

我試過你的編碼,但無法獲得行動類中的參數值 – Srivathsan

+0

你有沒有嘗試過相同的代碼?因爲代碼 –

+0

中存在拼寫錯誤,所以我嘗試了相同的代碼。 – Srivathsan

0

有兩個struts標籤可以在頁面上生成複選框項。

checkboxlist

checkbox

標籤的CheckBoxList用於填充從地圖,列表或數組的複選框。這將生成複選框以符合您提供的結構中的項目數量。 list屬性是強制性的,用於指定列表或映射或數組。提交表單時,要獲取操作對象中的選定項目,請使用屬性name對其進行映射。即要獲取選定的項目,請指定name屬性,在操作類中定義一個具有相同名稱的數組或列表,爲數組或列表提供getter和setter。您可以參考下面的討論,以瞭解更多:

http://www.mkyong.com/struts2/struts-2-scheckboxlist-multiple-check-boxes-example/

checkbox標籤將產生你的網頁上的單個複選框項。這是相對簡單和易於實施的。請參考下面的鏈接去了解它是如何工作的:

http://www.mkyong.com/struts2/struts-2-scheckbox-checkbox-example/

而且,爲了驗證複選框項目,可以爲您處理基本的HTML + JavaScript的執行邏輯。您可以使用cssClass屬性在使用checkboxlist時指定html類,然後使用jQuery按類選擇以獲取項目並進行驗證。

+1

我試過,但事情是我的參數值爲空... – Srivathsan

+0

驗證您的代碼有錯誤。指定a而不是ay。 public void setA(String [] ay){this.a = a;} –

+0

我試過但沒有得到參數值 – Srivathsan