我有一个下拉,如下,
<select id="role" class="form-control" th:field="*{role}" >
<option th:field="*{role}" value="USER">USER</option>
<option selected th:field="*{role}" value="ADMIN" >ADMIN</option>
<option th:field="*{role}" value="SUPERUSER">SUPERUSER</option>
</select>
我希望默认选项为ADMIN。为此,我添加了选定的内部选项标签。但默认选项仍指向USER。任何人都可以帮我解决这个问题。感谢
答案 0 :(得分:1)
在呈现页面之前,在控制器中(在java中)将“role”的值设置为“ADMIN”。
此外,您不需要所有这些额外的:字段属性。 th:字段应该只出现在选择中。
<select id="role" class="form-control" th:field="*{role}" >
<option value="USER">USER</option>
<option value="ADMIN" >ADMIN</option>
<option value="SUPERUSER">SUPERUSER</option>
</select>
答案 1 :(得分:0)
我做了类似的事情,让它发挥作用。
<script th:inline="javascript">
/*<![CDATA[*/
window.addEventListener("DOMContentLoaded", function() {
var optionSelected = [[${product.role}]];
if(optionSelected == null){
$("#role").val("ADMIN");
}
});
/*]]>*/
</script>
并从选项中删除所选属性。