好的。我正在制作一个有数据库后端的java web应用程序来对一些数据做一些增删改查。当单击某项旁边的“编辑”按钮时,它会导航到包含当前数据的表单进行编辑。其中一个字段是布尔值,我想将其显示为复选框,以便True将其选中,而False将其保留为未选中。
我尝试了许多不同的变体,但似乎都不起作用。以下是<%= action.get("stable")%>返回带有True或False的字符串的一些示例
<input TYPE=checkbox name="stable" value=<%= action.get("stable") %>
<input TYPE=checkbox name="stable" value=<%= action.get("stable")?"True":"False" %><%= action.get("stable")?"checked":"" %>
<input TYPE=checkbox name="stable" checked=<%= action.get("stable")%>/>那么如何根据action.get("stable")返回的字符串将复选框设置为选中/取消选中呢
谢谢你的帮助,如果这个问题有点琐碎,我很抱歉。
发布于 2011-10-21 14:37:08
选中复选框的正确标记为checked="checked"。如果未选中,则checked属性必须根本不存在。
您应该使用JSTL和JSP生成它,因为scriptlet是过去的东西,几年内不应该在JSP中使用。参见How to avoid Java code in JSP files?。
这当然需要一些重构,以便action bean有一个返回布尔值的常规isStable()方法,这将更加简洁。但不管怎样,下面是使用现有代码的工作方式:
<input type="checkbox" name="stable" <%
if ("True".equals(action.get("stable"))) {
out.print("checked=\"checked\"");
} %>/>请注意,所有属性也应该用引号括起来。
发布于 2019-08-16 06:46:12
我用了这个,它工作得很好。
<input type="checkbox" <c:if test="${item.estado==2}">checked=checked</c:if> class="switch-input" >发布于 2011-10-21 14:33:50
需要设置<input type="checkbox"/>的checked属性
编辑:
<input type="checkbox" <%=action.get("stable") ? "checked='checked'" : "" %> />https://stackoverflow.com/questions/7845741
复制相似问题