2012-07-19 95 views
4

我正在寻找一种方法来从存储在会话范围的bean中预先填充Spring MVC表单。 (使用这个命名空间:http://www.springframework.org/tags/form)。预填充Spring MVC表单

例如,假设我添加了一个queryInfo对象到uiModel

如何显示从queryInfo对象实例变量?

<form:input path="queryInfo.name" /> 

这可能吗?如果是这样如何?

回答

8

在您的请求映射,豆添加到模型:

model.addAttribute("queryInfo", queryInfo); 

然后使用的ModelAttribute在表单标签将其绑定到窗体:

<form:form id="some-form" modelAttribute="queryInfo"> 

... 

现在的名字将显示(提供当你这样做的时候,你的物品上有一个吸气剂):

<form:input path="name" /> 

Keep in心智形式:输入是form:form的子标签。它并不意味着要自己使用。

+0

非常感谢skel625 – balteo 2012-07-20 09:58:44

0

@ skel625对于form:input的解决方案是完美的,但在form的情况下:select,with different option如何设置属性?因为以这种方式仅适用于下列形式:输入

我的方式:选择是这样的:

<form:select path="dolorefastidio"> 
         <option value="1"><spring:message code="questionnaire.compile.label.paindiscomfort.one"/></option> 
         <option value="2"><spring:message code="questionnaire.compile.label.paindiscomfort.two"/></option> 
         <option value="3"><spring:message code="questionnaire.compile.label.paindiscomfort.three"/></option> 
         <option value="4"><spring:message code="questionnaire.compile.label.paindiscomfort.four"/></option> 
         <option value="5"><spring:message code="questionnaire.compile.label.paindiscomfort.five"/></option> 
        </form:select> 
+0

我解决了,更换标签

0

的溶液放入一个属性值的bean的属性,这样

考试登记表

    <div class="form-group has-success"> 
         <label for="code" class="col-lg-3 control-label">Exam Code</label> 
         <div class="col-lg-9"> 
          <form:input type="text" class="form-control" path="cod" placeholder="code" value="${editExam.cod}"/>       
          <form:errors path="cod" cssClass="error" /> 
         </div> 
        </div> 

        <div class="form-group has-success"> 
         <label for="name" class="col-lg-3 control-label">Exam Name</label> 
         <div class="col-lg-9"> 
          <form:input type="text" class="form-control" path="name" placeholder="name" value="${editExam.name}"/> 
          <form:errors path="name" cssClass="error" /> 
         </div> 
        </div> 

        <div class="form-group has-success"> 
         <label for="teachNme" class="col-lg-3 control-label">Teacher Name</label> 
         <div class="col-lg-9"> 
          <form:input type="text" class="form-control" path="teachName" 
           placeholder="Teacher Name" value="${exams.teachName}" /> 
          <form:errors path="teachName" cssClass="error" /> 
         </div> 
        </div> 

        <div class="form-group has-success"> 
         <label for="vote" class="col-lg-3 control-label">Final Grade</label> 
         <div class="col-lg-9"> 
          <form:input type="text" class="form-control" path="vote" 
           placeholder="Vote" value="${exams.vote}" /> 
          <form:errors path="vote" cssClass="error" /> 
         </div> 
        </div> 

        <div class="form-group has-success"> 
         <label for="cfu" class="col-lg-3 control-label">Credits (CFU)</label> 
         <div class="col-lg-9"> 
          <form:input type="text" class="form-control" path="cfu" 
           placeholder="Credits" value="${editExam.cfu}" /> 
          <form:errors path="cfu" cssClass="error" /> 
         </div> 
        </div> 
        <input type="submit" value="Save" 
         class="btn btn-primary pull-right"> 
       </fieldset> 
      </form:form>