1.介绍
在低版本的Spring中,你必须通过JSTL或spring:bind将表单对象绑定到HTML表单页面中,对于习惯了Struts表单标签的开发者来说,Spring MVC的这一表现确实让人失望。不过这一情况已经一去不复返了,从Spring 2.0开始,Spring MVC开始全面支持表单标签,通过Spring MVC表单标签,我们可以很容易地将控制器相关的表单对象绑定到HTML表单元素中
###2.form标签 和使用任何JSP扩展标签一样,在使用Spring表单标签之前,你必须在JSP页面中添加一行引用Spring表单标签的声明,如下所示
<%@ taglib prefix="form" uri="http://www.springframework.org/tags/form"%> ①引入标签的声明
一般情况下,我们使用“form”作为Spring MVC表单标签的前缀,当然只要愿意,你可以调整为其它的前缀名。在声明好标签引用后,就可以在该JSP文件中使用所有Spring MVC的表单标签了。下面是一个使用form:form表单标签的示例,它将最终生成一个HTML的 form表单:
<form:form>
用户名:<form:input path="userName" /> <br>
密 码:<form:password path="password" /><br>
Email:<form:input path="email" /><br>
<input type="submit" value="注册" name="testSubmit"/>
<input type="reset" value="重置" />
</form:form>
###3.一些属性
cssClass | 使用该属性指定表单元素CSS样式名,相当于HTML元素的class属性。示例:<form:input path="userName" cssClass="inputStyle"/>。
cssStyle | 直接通过该属性指定样式,相当于HTML元素的style属性。示例: <form:input path="userName" cssStyle="width:100px"/>。
cssErrorClass | cssClass表示表单元素未发生错误时对应的样式,而cssErrorClass表示表单元素发生错误时对应的样式,示例: <form:input path="userName" cssClass="sty1" cssErrorClass= "sty2"/>
###4.path属性 所有表单组件标签都通过path属性绑定表单对象的属性值,它支持级联属性,比如path="user.userName"将调用表单对象getUser.getUserName()绑定表单对象的属性值。
<form:form>
用户名:<form:input path="userName" /> <br> ①单行文件框标签
密 码:<form:password path="password" /><br> ②密码框标签
描 述:<form:textarea path="desc" cols="20" rows="3"/><br> ③多行文件框标签
<form:hidden path="times"/> ④隐藏组件的值
<input type="submit" value="注册" name="testSubmit"/>
<input type="reset" value="重置" />
</form:form>