如何实现checkbox在值为true时选中、false时未选中
解决Checkbox根据布尔值自动选中的问题
checkbox的选中状态是由checked属性控制的,不是value属性。你当前的代码只设置了value,所以不管返回值是true还是false,都不会自动触发选中状态。
以下是两种可行的实现方式:
方式一:EL表达式条件渲染
如果后端返回的是字符串类型的"true"/"false":
<input type="checkbox" name="s1syslog_enabled" id="s1syslog_enabled" ${requestScope.data == 'true' ? 'checked' : ''}>
如果后端返回的是布尔类型的true/false:
<input type="checkbox" name="s1syslog_enabled" id="s1syslog_enabled" ${requestScope.data ? 'checked' : ''}>
方式二:JSP脚本判断
<input type="checkbox" name="s1syslog_enabled" id="s1syslog_enabled" <%= ((Boolean)request.getAttribute("data")) ? "checked" : "" %>>
原理很简单:当requestScope.data为true(或字符串"true")时,会输出checked属性,checkbox自动选中;值为false时不输出该属性,保持未选中状态。
内容的提问来源于stack exchange,提问作者Ng Leng Poh
相关产品推荐
相关产品推荐

