Как установить значение по умолчанию для нескольких флажков в Struts 2
В Struts 2 вы можете создать несколько флажков с одним и тем же именем с помощью тега<s:checkboxlist>. Сложность состоит в том, как установить значение по умолчанию в нескольких флажках. Например, список флажков с опциями «красный», «желтый», «синий», «зеленый», и вы хотите установить «красный» и «зеленый» в качестве значений по умолчанию.
1. Пример
Пример<s:checkboxlist>
В результате следующий HTML-код
Класс действия для предоставления списка опций цвета для флажков.
//... public class CheckBoxListAction extends ActionSupport{ private Listcolors; 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» будут отмечены по умолчанию.