1

<form:form>我的jsp 页面中有一个包含多个<form:input>字段(因此,字段是数据绑定的)。其中一些字段是由用户填充的,但有些字段不是等待用户输入某个值,而是需要预先填充从另一个 jsp 页面通过 spring 控制器发送到该页面的参数值。如何将该参数写入<form:input>以便用户不必这样做?

4

1 回答 1

0

如果我正确理解您的问题,您希望使用之前已提交的值预填充一些字段。

您需要了解的是,使用 Spring 表单标记库,Spring 期望您将命令对象放入模型中,并将该命令对象中的值绑定到表单字段。

如果您没有在模型中指定此命令对象的键,则标记库将使用键“command”查找它。您可以使用 form 标记上的 commandName 属性指定不同的名称,例如:

<form:form commandName="myModelObject">

Spring 现在将在模型中查找名为 myModelObject 的对象以用于绑定表单标签。

然后您需要做的另一件事是在 Spring 表单中的表单标签中,引用命令对象中的字段。因此,例如,假设您的命令对象有一个字段 firstName,您将有一个像这样的输入标签:

<form:input path="firstName" />

path 属性告诉该属性它应该与命令对象中的哪些字段绑定。

因此,您只需将命令对象放入模型中,并预先填充适当的字段,相应的表单字段将预先填充这些值。例如,如果您将一个名为 myModelObject 且具有字段 firstName 的对象放入模型中,则该对象中将预先填充该对象中当前设置的任何 firstName。

于 2013-12-19T06:28:35.977 回答