2016-03-10 1 views
1

У меня есть радиотег на моей странице формы. По умолчанию выбрано «Нет».Радио Struts2: заданное значение, если модель не установлена ​​

<s:radio label="Yes NO" name="accept" list="#{'Y':'Yes','N':'No'}" value="'N'"/> 

Но если выбрать Да и сохранить форму в базу данных и повторной визуализации, то радио все еще показывает «Нет», когда база данных и свойство принимать устанавливаются: «Да».

Что мне не хватает?

ответ

1

С value="'N'" вы заставляете значение ВСЕГДА N.

Вы должны прочитать значение динамически из атрибута, предварительно установив его в действии:

private String accept; 

public String getAccept(){ 
    if (accept==null) { accept = "N"; } 
    return accept; 
} 
<s:radio label="Yes NO" name="accept" list="#{'Y':'Yes','N':'No'}" value="%{accept}"/> 

или даже чище, удалите атрибут значения вообще:

<s:radio label="Yes NO" name="accept" list="#{'Y':'Yes','N':'No'}" /> 

и он будет предустановлен это с атрибутом name.

+1

Спасибо большое! Это работает. – VNN456

Смежные вопросы