我在春季提交表单数据时遇到问题。 <spring:bind>
似乎是解决方案的一部分。查看我的完整问题here。
BindTag found here的文档对我来说并不清楚。为什么<spring:bind>
在某些情况下需要提交数据,而在大多数情况下不需要?
为了使表单正常运行,必须使用<spring:bind>
的典型情况是什么?
答案 0 :(得分:4)
当您想要从输入表单解析多个对象时,您会发现标记<spring:bind>
非常有用。以下是Spring的doc(http://docs.spring.io/spring/docs/1.2.6/taglib/tag/BindTag.html)中的修改示例:
<form method="post">
## now bind on the name of the company
<spring:bind path="company.name">
## render a form field, containing the value and the expression
Name: <input
type="text"
value="<c:out value="${status.value}"/>"
name="<c:out value="${status.expression}"/>">
</spring:bind>
<spring:bind path="address.street">
Name: <input
type="text"
value="<c:out value="${status.value}"/>"
name="<c:out value="${status.expression}"/>">
</spring:bind>
<input type="submit">
</form>
答案 1 :(得分:1)
虽然我自己从未使用过这个标签,但我对文档的理解是这样的。标记将为您提供有关表单属性与bean的绑定状态的信息。例如:
<form:form modelAttribute="employee">
<form:input path="name"/>
<spring:bind path="name"/>
<spring:bind path="employee"/>
</form:form>
标记将显示(或通过BindStatus对象公开)使用name属性(第一种情况)发生的所有错误以及Employee实体及其属性(第二种情况)上的所有错误。我不确定这个标签与提交数据的成功有什么关系,而是它被用作信息工具。