天天看點

Java Web 開發之 select(option)選項資料回顯

背景代碼:

// 背景取回顯值清單
List<Role> roles = roleService.getAllRoles();
model.addAttribute("roles", roles);
// 背景取回顯選中值清單
List<UserRole> userRoles = userService.getUserRoleByUserId(userId);
model.addAttribute("userRoles", userRoles);
           

第一種方式:

<!-- 前端用<c:if>标簽判斷并回顯 -->
<select id="roleSelect" class="form-control" name="roleId">
	<c:forEach items="${roles}" var="role">
		<c:if test="${role.roleId == userRoles[0].roleId}">
			<option value="${role.roleId}" selected>${role.description}</option>
        </c:if>
        <c:if test="${role.roleId != userRoles[0].roleId}">
            <option value="${role.roleId}">${role.description}</option>
       	</c:if>
	</c:forEach>
</select>
           

第二種方式:

<!-- 用input标簽從背景擷取的選中的值 -->
<input type="hidden" id="roleId" value="${userRoles[0].roleId}"/>

/** 使用Jquery設定選中 */
$(function(){
	var roleId = $("#roleId").val();
	$("#roleSelect").val(roleId);    // 設定 value 為 roleId 的項選中
})