输入组件标签
表单中有一些用于接受输入值的组件,如单行文本框、多行文本框以及密码框,Spring为它们提供了对应的表单标签,请看下面的例子:
代码清单 1 使用输入组件标签的表单
<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>
正如你看到的,所有表单组件标签都通过path属性绑定表单对象的属性值,它支持级联属性,比如path="user.userName"将调用表单对象getUser.getUserName()绑定表单对象的属性值。这些表单组件标签拥有大多数HTML组件标签的镜像属性,如③处的<form:textarea>就使用了cols和rows属性设定列数和行数。
以上使用表单标签的页面的对应HTML页面如下所示:
<form id="command" method="post" action="/baobaotao//registerUser.html"> 用户名:<input id="userName" name="userName" type="text" value=""/><br> 密 码: <input id="password" name="password" type="password" value=""/><br> 描 述:<textarea id="desc" name="desc" rows="3" cols="20"></textarea><br> <input id="times" name="times" type="hidden" value="0"/> <input type="submit" value="注册" name="testSubmit"/> <input type="reset" value="重置" /> </form>
单选框和复选框组件标签
单选框和复选框组件虽然在HTML中都对应<input>元素标签,但在Spring MVC表单标签中,它们分别对应两个更达意的标签:
<form:radiobutton>和<form:checkbox>。 radiobutton 单选框组件由两个同名的标签组件组成,当表单对象对应属性值和value值相等时,单选框选中。下面是一个代表性别的单选框: <form:form> 性 别:<form:radiobutton path="sex" value="0"/>男 <form:radiobutton path="sex" value="1"/>女 </form:form> 当表单对象的sex属性为0时(可以是String、int等可以自动转换为String的类型),所生成的HTML代码如下所示: <form id="command" method="post" action="/baobaotao//registerUser.html"> 性 别:<input id="sex1" name="sex" type="radio" value="0" checked="checked"/>男 <input id="sex2" name="sex" type="radio" value="1"/>女 </form>