【发布时间】:2014-06-28 16:24:23
【问题描述】:
参考帖子后
Set HTML dropdown selected option using JSTL
我已经通过以下方式写了JSP。
<form name="options" id="options" action="${pageContext.request.contextPath}/difficulty.do" method="post">
<div id="difficulty">
<label style="font-weight: bold; color: gray; margin-left: 16px">Difficulty Level</label><br>
<select name="difficultyLevel" style="color: gray; margin-top: 5px" onchange="optionChanged()">
<c:if test="${level == null}">
<option value="easy" name="easy" selected>Easy</option>
<option value="medium" name="medium">Medium</option>
<option value="hard" name="hard">Hard</option>
</c:if>
<c:if test="${level != null}">
<option value="easy" name="easy" selected=${level == 'easy' ? "selected" : ''}>Easy</option>
<option value="medium" name="medium" selected=${level == 'medium' ? "selected" : ''}>Medium</option>
<option value="hard" name="hard" selected=${level == 'hard' ? "selected" : ''}>Hard</option>
</c:if>
</select>
</div>
</form>
<script type="text/javascript">
$('select').on({ "focus": function () {
this.selectedIndex = -1;
}, "change": function () {
$('#options').submit();
}
});
</script>
</form>
但选择选项时,调用servlet,servlet将称为级别的属性放入JSP重定向到同一页面。当level 是not null 时,我在dropdown list 中只看到hard 选项,而与所选选项无关,即easy, or medium, or hard。非常感谢任何指导。
【问题讨论】: