我有下拉选择框,我正在动态获取值
<select style='width: 200px;' id="combo_zone11" name="alfa1">
<c:forEach var="grade" items="${gradeInfo}">
<option id='syear' value="" selected="selected">
<option value=${grade.getDropDownId()}>${grade.getDropDownName()}</option>
</c:forEach>
</select>
我将它存储在会话变量中,以测试我在下一页的某处显示会话属性(下拉所选值)
<c:out value="${schoolYear}"></c:out>
它的显示效果很好。但在此页面中,我尝试将此值设置为下拉列表的选定值。因为我做了,
<select style='width: 200px;'id="combo_zone11" name="alfa1">
<c:forEach var="grade" items="${gradeInfo}">
<option id='syear' value="${schoolYear}" selected="selected">
<option value=${grade.getDropDownId()} >${grade.getDropDownName()}</option>
</c:forEach>
</select>
但我无法将其设置为选择如何执行此操作,任何人都可以帮助我。
答案 0 :(得分:0)
您尚未设置选项文字。你也没有关闭选项。你需要使用:
if(${schoolYear}==${grade.getDropDownId()})
<option value="${schoolYear}" selected="selected">${schoolYear}</option>
else
<option value="${schoolYear}">${schoolYear}</option>
答案 1 :(得分:0)
这里比较${schoolYear}
和${grade.getDropDownId()}
的值我们可以使用if else,但在jsp中我们有<c:choose>
和'`为此。这是使用它的正确格式,
<select style='width: 200px;' >
<c:forEach var="grade" items="${gradeInfo}">
<c:choose>
<c:when test="${grade.getDropDownId()==schoolYear}">
<option value=${grade.getDropDownId()}selected="selected">${grade.getDropDownName()}</option>
</c:when>
<c:otherwise>
<option value=${grade.getDropDownId()}>${grade.getDropDownName()}</option>
</c:otherwise>
</c:choose>
</c:forEach>
</select>
这将给出正确的值。