我试图用Spring MVC来编辑一些对象。此对象的某些字段在创建时设置,然后无法编辑,因此它们必须以纯文本的形式显示,而不像输入。 当我没有发现像春天一样的水手时,我非常惊讶:春季输出形式标签库。怎么办?请帮助:) 这里是我的窗体的代码:Spring MVC窗体静态文本
<?xml version="1.0" encoding="UTF-8" ?>
<%@page contentType="text/html" pageEncoding="UTF-8"%>
<%@ taglib prefix="c" uri="http://java.sun.com/jstl/core" %>
<%@taglib prefix="form" uri="http://www.springframework.org/tags/form" %>
<%@ taglib prefix="sec" uri="http://www.springframework.org/security/tags" %>
<%@taglib prefix="spring" uri="http://www.springframework.org/tags" %>
<h1><spring:message code="Information" /></h1>
<form:form commandName="shop" method="POST">
<table>
<tr>
<td><spring:message code="ShopCompanyName"/>
<td colspan="2">**HERE MUST BE A STATIC TEXT
FILLED WITH THE VALUE OF SOME FIELD FROM OBJECT**</td>
</tr>
<tr>
<td colspan="3"><h2><spring:message code="Contacts"/></h2></td>
</tr>
<tr>
<td><spring:message code="ShopUserLN"/></td>
<td><form:input path="user.lastName"/></td>
<td><form:errors path="user.lastName" cssClass="error"/></td>
</tr>
<tr>
<td><spring:message code="ShopUserFN"/></td>
<td><form:input path="user.firstName"/></td>
<td><form:errors path="user.firstName" cssClass="error"/></td>
</tr>
<tr>
<td><spring:message code="ShopUserMN"/></td>
<td><form:input path="user.middleName"/></td>
</tr>
<tr>
<td><spring:message code="ShopUserPhone"/></td>
<td><form:input path="user.phone"/></td>
<td><form:errors path="user.phone" cssClass="error"/></td>
</tr>
</table>
<input type="submit" value="Save">
</form:form>
谢谢 工作!但是,当表单提交时,它会将此字段值提交给控制器吗? –
不,这是静态文本,正如您所问。如果你想提交它(但为什么不在服务器端重新生成它),那么你需要一个隐藏的表单字段。 –
要在服务器端重新生成它,我将不得不再次从数据库中获取此对象,使用提交的对象的值更新检索到的对象中的所有可编辑文件,然后保存更新的对象..这不好,我认为......将它一个好方法是使用一个静态字段显示数据和一个隐藏字段,以便在保存整个对象时将其隐藏到服务器,所以它不会是空的? –