JSP页面上经常会用到下拉框,如下图所示:
实际使用需求:每次页面刷新时,保持下拉框选定值显示在当前窗口,如“状态”下拉框选择值=“已删除”,则页面刷新时,需要实现如下效果:
按照如下两种方法都无法实现:
<select id="STATUS" name="STATUS" >
<option value = "N" >正常</option>
<option value = "D" >已删除</option>
</select>
此种情况每次都自动跳转到第一个值,即:“正常”
<select id="STATUS" name="STATUS" >
<option value = "N" >正常</option>
<option value = "D" selected='selected'>已删除</option>
</select>
此种情况每次都自动跳转到设置selected='selected'的选项,即“已删除”
从网上找了很多其他方法,实验过了,效果都不是很好,自己通过查找一下资料,发现一种最简单便捷的实现方法:
实现方法如下:
<select id="STATUS" name="STATUS" >
<option value = "N" ${STATUS=="N"?'selected':''}>正常</option>
<option value = "D" ${STATUS=="D"?'selected':''}>已删除</option>
</select>
其中${STATUS=="N"?'selected':''}为EL表达式,即当前选择的值=“N”,则设置value = "N"的项为默认选项,实现效果如下:
下拉框“状态”=“已删除”,“附件用途”=“电子工艺”,点击查询按钮后,下拉框值保留了选择的值。