用<c:if>使前端下拉框的值匹配后台数据库的值
业务上一般用于修改时。例如一个驾校有很多报名点,香蕉点,苹果点,橘子点,芒果点,按顺序在下拉框中排列。这时候有一个学员报名,报名点是橘子,业务人员登记时登记错误,需要将橘子修改为香蕉点,于是点修改,在报名点那个下拉框那里默认显示的应该是之前登记的也就是橘子。
报名点在数据库的字段是orpId。
接下来在控制层已经完成数据传递的前提下,也就是已经获取到了要被修改的学员的各项信息和报名点表的信息,将其存在model里。学员信息的key是t,报名点信息的key是orpList。在前台的报名点下拉框这样写:
<select name="OrpId"> <c:forEach items="${orpList}" var="orp"> <option value="${orp.orpId}" <c:if test="${t.orpId==orp.orpId}">selected</c:if>>${orp.orpName}</option> </c:forEach> </select>