我知道这应该很容易实现,但我已经尝试了一切但仍然无效。 我的JSP表单非常简单(代码未完全发布):
<form:form id="form" class="form-horizontal" method="post" action="AddDoc" commandName="document" enctype="multipart/form-data">
<div id="divManual" class="checkbox">
<label id="labelManual">
${document.manual}
<form:checkbox id="chkManual" path="manual" label="This is a manual"/>
<sf:errors path="manual" class="text-danger"/>
</label>
</div>
<input id="submitForm" type="submit" class="btn btn-primary btn-lg" name="commit" value="Finish">
</form:form>
“document”对象只是一个简单的POJO。当提交表单时,整个对象经过验证过程,然后控制器检索相同的对象,如果有错误并且每个表单参数都正确绑定,除了这个“手动”参数,应该正确选中/取消选中,但它始终是显示未选中,无论用户是否在提交前进行了检查。正如你在${document.manual}
行中看到的那样,我在同一页面上打印参数的值,我可以告诉你它始终是正确的,但由于某种原因form:checkbox
没有得到它的值绑定。
请问,有什么想法吗?
答案 0 :(得分:0)
查看Mykong教程@ MyKong Tutorial,了解先决条件和诀窍的完整描述。
根据评论:
您始终可以在for循环中执行:$ {document.manual}。
在scriptlet中使用或java for循环。
但这并不算作具有约束力。
答案 1 :(得分:0)
解决。愚蠢的我:在加载页面时,有些js始终设置为未选中状态。对不起!!非常感谢efford。