Как установить значение по умолчанию для нескольких флажков в Struts 2
В Struts 2 вы можете создать несколько флажков с одним и тем же именем с помощью тега<s:checkboxlist>. Сложность состоит в том, как установить значение по умолчанию в нескольких флажках. Например, список флажков с опциями «красный», «желтый», «синий», «зеленый», и вы хотите установить «красный» и «зеленый» в качестве значений по умолчанию.
1. Пример
Пример<s:checkboxlist>
В результате следующий HTML-код
Класс действия для предоставления списка опций цвета для флажков.
//...
public class CheckBoxListAction extends ActionSupport{
private List colors;
private String yourColor;
public CheckBoxListAction(){
colors = new ArrayList();
colors.add("red");
colors.add("yellow");
colors.add("blue");
colors.add("green");
}
public List getColors() {
return colors;
}
//...
}
2. Одно значение по умолчанию
Чтобы установить параметр «red» в качестве проверенного значения по умолчанию, просто добавьте метод в класс Action и верните значение «red».
//...
public class CheckBoxListAction extends ActionSupport{
//add a new method
public String getDefaultColor(){
return "red";
}
}
В<s:checkboxlist> tag добавьте атрибут значения и укажите на методgetDefaultColor().
Struts 2 достаточно умен, чтобы сопоставить значение «defaultColor» с соответствующим свойством JavagetDefaultColor().
Запустите его снова, опция «красный» будет включена по умолчанию.
2. Несколько проверенных значений по умолчанию
Чтобы установить несколько значений «red» и «green» в качестве проверенного значения по умолчанию, просто верните «String []» вместо «String», Struts 2 будет соответствовать ему соответственно.
//...
public class CheckBoxListAction extends ActionSupport{
//now return a String[]
public String[] getDefaultColor(){
return new String [] {"red", "green"};
}
}
Запустите его еще раз, параметры «red» и «green» будут отмечены по умолчанию.