Spring MVC clears status.value



当绑定元素出现错误时,Spring MVC 会清除 status.value 吗? 如果是这样,如何使用 Status 元素检索值?

所以我有这个:

<c:forEach var="field" items="${fieldList}">
    <spring:bind path="myBean.${field.fieldName}">
        <input type="text" class="text" name="${status.expression}" value="${status.value}" />
        <span id="${status.expression}Error" class="error">
            <c:forEach items="${status.errorMessages}" var="error">
                <c:out value="${error}" />
            </c:forEach>
        </span>
    </spring:bind>
</c:forEach>

但是每次field包含验证错误时,输入${status.value}的值都会null 。我确信它在那里,因为通过${myBean.fieldName}访问可以完成这项工作。但我的问题是因为我正在做的迭代,我不能那样做。

我终于明白了。我没有使用 ${status.value} 而是使用 ${myBean[field.fieldName]} 直接访问字段值。

<c:forEach var="field" items="${fieldList}">
    <spring:bind path="myBean.${field.fieldName}">
        <input type="text" class="text" name="${status.expression}" value="${myBean[field.fieldName]}" />
        <span id="${status.expression}Error" class="error">
            <c:forEach items="${status.errorMessages}" var="error">
                <c:out value="${error}" />
            </c:forEach>
        </span>
    </spring:bind>
</c:forEach>

相关内容

最新更新