HTMLページには、次のようなチェックボックスがあります。
<input name="serviceareas" type="checkbox" id="cb1" value="1">
<input name="serviceareas" type="checkbox" id="cb2" value="2">
...
jqueryの助けを借りて、チェックされたすべてのチェックボックスの値のjavascript配列を作成します
getSelectedValues : function() {
var allVals = [];
$('#checkboxTable :checked').each(function() {
allVals.push($(this).val());
});
//alert("allVals: "+allVals);
return allVals;
}
、Struts 2 アクションに送信します。たとえば、firebug リクエストでは、次のように表示されます:-
サービスエリア 21,26,30
アクションで私はそれをにマッピングしようとしました
private List<String> serviceareas = new ArrayList<String>();
しかし、代わりに SOP はそれをオブジェクトとして出力しており、それを Java リストにキャストすることはできません。
public class CreateEventAction extends ActionSupport {
private List<String> serviceareas = new ArrayList<String>();
public List<String> getServiceareas() {
return serviceareas;
}
public void setServiceareas(List<String> serviceareas) {
this.serviceareas = serviceareas;
}
@Override
public String execute() throws Exception {
if(this.serviceareas != null) {
for (String serviceAreaId : this.serviceareas) {
System.out.println("String :"+serviceAreaId);
}
}
return SUCCESS;
}
出力: 文字列:21,26,30
助けてください。前もって感謝します。