J'utilise Struts 2 et Freemarker. Ceci est ma classe d'action:Comment passer plusieurs cases à cocher à l'action
package test;
import java.util.ArrayList;
import java.util.List;
public class WelcomeAction {
private String userName;
private String gender;
private List<String> fruits;
private String fruit;
public String execute() {
// if(!userName.equals("a"))
// {
// return "fail";
// }
// else {
// return "SUCCESS";
// }
return "SUCCESS";
}
public String getUserName() {
return userName;
}
public void setUserName(String userName) {
this.userName = userName;
}
public String getGender() {
return gender;
}
public void setGender(String gender) {
this.gender = gender;
}
public String getFruitsPicked() {
return fruit;
}
public void setFruitsPicked(String fruitsPicked) {
this.fruit = fruitsPicked;
}
public List<String> getFruits() {
return fruits;
}
public void setFruits(List<String> fruits) {
this.fruits = fruits;
}
public WelcomeAction(){
fruits = new ArrayList<String>();
fruits.add("apples");
fruits.add("oranges");
fruits.add("pears");
fruits.add("peaches");
}
}
C'est ce que j'ai dans mon .ftl
:
<input type="checkbox" list="fruits" name="friut[]" value="apples" /> Apples<br />
<input type="checkbox" list="fruits" name="friut[]" value="oranges" /> Oranges<br />
<input type="checkbox" list="fruits" name="friut[]" value="pears" /> Pears<br />
<input type="checkbox" list="fruits" name="friut[]" value="peaches" /> Peaches<br />
Voici comment j'ai essayé l'impression:
<#list fruits as item>${item}</#list>
Mais au-dessus imprime commande affiche tous les éléments dans ma liste que j'ai ajouté dans mon constructeur. Bien sûr, je ne veux que les éléments qui ont été vérifiés lorsque le formulaire a été soumis.