.
.
.
.
.
在 Struts2 的 Action 中怎樣獲取表單提交上來的多個 checkbox 的值呢?
其實在 Action 中獲得的是一個 String 型數據,每一個被選中的 checkbox 的 value 被拼接在一起,每個值之間以逗號隔開(,)。
所以在 Action 中定義一個跟 checkbox 的 name 同名的屬性來接收這些被選中的 checkbox 的 value 即可。
以下是實現的代碼:
1 前台 HTML 代碼:
2 <input type="checkbox" name="chkName" value="abc">
3 <input type="checkbox" name="chkName" value="def">
4 <input type="checkbox" name="chkName" value="ghi">
1 Action 中的代碼:
2 private String chkName;
3 //getter()、setter() 方法省略
4 public String execute() throws Exception{
5 String[] chkValues = this.getChkName().split(", ");
6 }
最后,chValues 數組就是被選中的 checkbox 中的 value。
有一點需要注意:chkName 中的每一個值都是這種形式:[value1, value2, value3, ...] 注意,每個逗號后面都有一個空格,所以是這樣的: split(",空格") 別落下逗號后面的空格。