我正在将一些代码从本土MVC更改为Spring 2.5 MVC。我们有一个用于编辑对象的表单,因此我在控制器中使用formBackingObject()
来使用当前值填充表单字段。在旧的MVC中,我们使用JSTL fmt
taglib来格式化日期和货币字段。这很好,因为格式化在表示层中。
现在使用Spring,使用formBackingObject()
正确填充字段,但Spring无法识别form:input
元素中的value属性:
<%@ taglib prefix="fmt" uri="http://java.sun.com/jsp/jstl/fmt" %>
<form:form method="post" commandName="editProgramCommand" name="editTitleForm">
<fmt:formatNumber type="NUMBER" value="${program.price}" var="formattedPrice" minFractionDigits="2" />
<form:input path="price" id="price" value="${formattedPrice}" />
... other fields
</form:form>
关于如何在Spring表单中正确格式化值的想法?我在网上找不到太多内容,所以我认为它是一个非常简单的语法错误,或者我完全走错了路。
答案 0 :(得分:0)
Spring form:input
从path
属性而不是value
属性中识别输入的值。如果看到spring form tld,则表单输入标记没有属性值。
spring:bind
代替弹簧形式。 Spring Bind Reference