Spring MVC更新模型属性的问题

时间:2015-10-06 09:30:43

标签: spring spring-mvc

我在使用spring mvc更新表单时遇到了一个小问题。

以下是我的代码段

<form:form name="personInfo"  method="post"    modelAttribute="person"> 
<td class="empty"></td>
<td class="editablefields">Football:</td>
<td class="value">
<c:forEach  items="${person.gameList}" var="game" varStatus = "count">
<c:if test="${game.code == 'FB'}">
<form:textarea path="gameList[${count.index }].value" id="" />
</c:if>
</c:forEach>
</td>
</form:form>

提交表单后,游戏值在post方法中得到更新,但game.code将变为null。

请解释为什么会这样?

1 个答案:

答案 0 :(得分:1)

您的标记需要提供person及其code属性之间的映射。否则,code中的值将不会包含在处理程序方法的HTTP请求中。尝试将循环更改为:

<c:forEach  items="${person.gameList}" var="game" varStatus = "count">
  <c:if test="${game.code == 'FB'}">
    <form:textarea path="gameList[${count.index }].value" id="" />
    <form:hidden path="gameList[${count.index }].code" value="${game.code}"/>
  </c:if>
</c:forEach>