在Struts2 的Action中怎样获取表单提交上来的多个checkbox的值
生活随笔
收集整理的這篇文章主要介紹了
在Struts2 的Action中怎样获取表单提交上来的多个checkbox的值
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
第一種方法:獲取結果String類型
?
在 Action 中獲得的是一個 String 型數據,每一個被選中的 checkbox 的 value 被拼接在一起,每個值之間以逗號隔開(,)。?
所以在 Action 中定義一個跟 checkbox 的 name 同名的屬性來接收這些被選中的 checkbox 的 value 即可。?
以下是實現的代碼:?
前臺 HTML 代碼:?
Html代碼?? <input?type="checkbox"?name="chkName"?value="abc">?? <input?type="checkbox"?name="chkName"?value="def">?? <input?type="checkbox"?name="chkName"?value="ghi">??
Action 中的代碼:?
Java代碼?? private?String?chkName;?? //getter()、setter()?方法一定要有?? public?String?getChkName(){?? ????return?chkName;?? ????}?? public?void?setChkName(String?chkName){?? ????this.chkName=chkName;?? ????}?? ?? public?String?execute()?throws?Exception{?? ????????String[]?chkValues?=?this.getChkName().split(",?");?? }??
最后,chValues 數組就是被選中的 checkbox 中的 value。?
有一點需要注意:chkName 中的每一個值都是這種形式:[value1, value2, value3, ...] 注意,每個逗號后面都有一個空格,所以是這樣的: split(",空格")?
別落下逗號后面的空格。?
第二種方法:獲取結果為String[]數組類型 ?
在 Action 中獲得的是一個 String[]數組型數據,每一個被選中的 checkbox 的 value是數組的一個值。?
所以在 Action 中定義一個跟 checkbox 的 name 同名的屬性來接收這些被選中的 checkbox 的 value 即可。?
以下是實現的代碼:?
前臺 HTML 代碼:?
Html代碼?? <input?type="checkbox"?name="chkName"?value="abc">?? ?<input?type="checkbox"?name="chkName"?value="def">?? ?<input?type="checkbox"?name="chkName"?value="ghi">??
Action 中的代碼:?
Java代碼?? private?String[]?chkName;?? ?//getter()、setter()?方法一定要有?? ?public?String[]?getChkName(){?? ????return?chkName;?? ????}?? ?public?void?setChkName(String[]?chkName){?? ????this.chkName=chkName;?? ????}?? ??? ?public?String?execute()?throws?Exception{?? ?????????for(int?i=0;i<this.getChkName().length;i++){?? ????????????????String?chkNameValue=this.getChkName()[i];?? ?????????}?? ?}??
第三種方法:獲取結果為List類型 ?
在 Action 中獲得的是一個 List數據,每一個被選中的 checkbox 的 value是List的一個對象。?
所以在 Action 中定義一個跟 checkbox 的 name 同名的屬性來接收這些被選中的 checkbox 的 value 即可。?
以下是實現的代碼:?
前臺 HTML 代碼:?
Html代碼?? <input?type="checkbox"?name="chkName"?value="abc">?? ?<input?type="checkbox"?name="chkName"?value="def">?? ?<input?type="checkbox"?name="chkName"?value="ghi">??
Action 中的代碼:?
Java代碼?? private?List<String>?chkName;?? //getter()、setter()?方法一定要有?? public?List<String>?getChkName(){?? ????return?chkName;?? ????}?? public?void?setChkName(List<String>?chkName){?? ????this.chkName=chkName;?? ????}?? ?? public?String?execute()?throws?Exception{?? ????????for(int?i=0;i<this.getChkName().size();i++){?? ????????????????String?chkNameValue=this.getChkName().get(i);?? ????????}?? } ?
超強干貨來襲 云風專訪:近40年碼齡,通宵達旦的技術人生
在 Action 中獲得的是一個 String 型數據,每一個被選中的 checkbox 的 value 被拼接在一起,每個值之間以逗號隔開(,)。?
所以在 Action 中定義一個跟 checkbox 的 name 同名的屬性來接收這些被選中的 checkbox 的 value 即可。?
以下是實現的代碼:?
前臺 HTML 代碼:?
Html代碼??
Action 中的代碼:?
Java代碼??
最后,chValues 數組就是被選中的 checkbox 中的 value。?
有一點需要注意:chkName 中的每一個值都是這種形式:[value1, value2, value3, ...] 注意,每個逗號后面都有一個空格,所以是這樣的: split(",空格")?
別落下逗號后面的空格。?
第二種方法:獲取結果為String[]數組類型 ?
在 Action 中獲得的是一個 String[]數組型數據,每一個被選中的 checkbox 的 value是數組的一個值。?
所以在 Action 中定義一個跟 checkbox 的 name 同名的屬性來接收這些被選中的 checkbox 的 value 即可。?
以下是實現的代碼:?
前臺 HTML 代碼:?
Html代碼??
Action 中的代碼:?
Java代碼??
第三種方法:獲取結果為List類型 ?
在 Action 中獲得的是一個 List數據,每一個被選中的 checkbox 的 value是List的一個對象。?
所以在 Action 中定義一個跟 checkbox 的 name 同名的屬性來接收這些被選中的 checkbox 的 value 即可。?
以下是實現的代碼:?
前臺 HTML 代碼:?
Html代碼??
Action 中的代碼:?
Java代碼??
總結
以上是生活随笔為你收集整理的在Struts2 的Action中怎样获取表单提交上来的多个checkbox的值的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: mybatis 中 foreach co
- 下一篇: Oracle ORA-00903:表名无