【发布时间】:2015-10-21 13:08:22
【问题描述】:
在我的表单中,我展示了对象的所有属性供用户编辑和更新。例如,我将汽车对象传递给 jsp,然后使用
<td><form:input type="text" id="carType" path="carType"
maxlength="15" size="20" /></td>
现在用户可以编辑它,一旦点击更新按钮,我就会提交表单
<form:form method="POST" id="formObj" action="updateCar"
modelAttribute="carObject">
现在,我不希望用户能够编辑某些属性,例如 id、品牌和型号。所以我使用 jstl 将这些值显示为标签,而不是在文本框中。所以我用了
${carObject.carId}
该值在页面上呈现并且可见。现在的问题是提交表单时,文本框中的值存在于表单对象中,但 jstl 中的值丢失了,并且不是控制器中表单对象的一部分。
我不想将文本框用于具有禁用功能的不可编辑值。我想使用jstl。请帮忙。
【问题讨论】:
-
您应该将对象存储在会话中。这比使用隐藏输入更安全。见
@SessionAttributes
标签: spring forms jsp spring-mvc servlets