JSP-如何基于枚举选择单选按钮



我的视图模型有一个包含三个可能值的枚举:

public enum PollFrequency {
    SixHours, TwentyFourHours, Weekly
}
public class AlertViewModel {
    private PollFrequency pollFrequency;
    public PollFrequency getPollFrequency(){
        return pollFrequency;
    }
    public void setPollFrequency(PollFrequency pollFrequency){
        this.pollFrequency = pollFrequency;
    }
    public AlertViewModel(){
        pollFrequency = PollFrequency.TwentyFourHours;
    }
}

我的JSP页面有三个单选按钮:

<input checked="<c:if test="${viewModel.pollFrequency eq 'SixHours'}">checked</c:if>" type="radio" name="checkEvery" value="checkEvery6Hours" /> 6 Hours<br />
<input checked="<c:if test="${viewModel.pollFrequency eq 'TwentyFourHours'}">checked</c:if>" type="radio" name="checkEvery" value="checkEvery24Hours" /> 24 Hours<br />
<input checked="<c:if test="${viewModel.pollFrequency eq 'Weekly'}">checked</c:if>" type="radio" name="checkEvery" value="checkEveryWeek" /> Weekly

我想根据枚举值设置单选按钮的checked属性,但目前总是选中最后一个单选按钮。我找到了一些关于如何使用springsource的线索,但我没有使用它。有简单的解决方案吗?

试试这个,

<input type="radio" <c:if test="${model.thing eq 'Thing1'}">checked</c:if> name="thing" value="thing1" /> Thing1<br />
<input type="radio" <c:if test="${model.thing eq 'Thing2'}">checked</c:if> name="thing" value="thing2" /> Thing2<br />
<input type="radio" <c:if test="${model.thing eq 'Thing3'}">checked</c:if> name="thing" value="thing3" /> Thing3

最新更新