Spring MVC 的表单标签

       新手在刚接触Spring mvc 的时候,对于from表单的传值会觉得奇怪。主要是因为对spring mvc 的标签不熟悉造成的。

     SpringMVC的表单标签之前,我们要在JSP文件的顶部加入以下指令:     

<%@ taglib prefix="form" uri="http://www.springframework.org/tags/form"%>
     step2 :  form标签:

<form:form modelAttribute="contentModel" method="post" action="${baseUrl}/save">

      modelAtrribute 属性指定该From指定的是哪个Model,当指定了对应的Model之后,就可以用在From标签使用path来指定Model的属性名称,从而绑定Model的数据。支持表单提交,可以使用常用的get/post。


     input标签 :

<form:input id="name" path="name" maxlength="200" class="form-control required" />

    password标签:

<form:password path="password"/>

   checkbox标签:

        会当checkbox绑定的是一个boolean数据的时候,那么checkbox的状态跟该boolean数据的状态是一样的,即true对应选中,false对应不选中。

<form:checkbox path="editable" data-toggle="checkbox" />

   radiobutton标签:

        会生成一个type为radio的Html input标签,如果绑定的数据的值对应radiobutton指定的value时则为选定状态,反之为不选定状态.

绑定Integer的radiobutton 标签:
<form:radiobutton path="radiobuttonId" value="0"/>0
<form:radiobutton path="radiobuttonId" value="1"/>1
<form:radiobutton path="radiobuttonId" value="2"/>2

   select标签:

       绑定的items数据可以是数组、集合或Map会根据items的内容生成select里面的option选项,当path的值和items中的某条数据值相同的时候对应的option为选定状态,反之为不选定状态.

绑定Map的select 标签:
<form:select path="selectId" items="${contentModel.testMap}"/>

<div class="controls col-md-10">
   <form:select id="subsystemId" path="subsystemId" name="subsystemId" 
       items="${fns:lookup('LOOKUP_SYSTEM_SUBSYSTEM')}" itemValue="id"
       itemLabel="label" 
       class="form-control" />
</div>


绑定列表数据:

    现在有一个类User,类里面有个Role属性

public Class User{
   private List<String> roles;
   
   public List<String> getRoles(){
      return roles
   }

   public void setRoles(List<String> <span><span>roles</span></span>){
     <span> <span class="keyword">this</span><span>.roles = roles;  </span></span>
   }
 }

      那么当我们需要展现该User是否拥有某一个Role的时候,我们可以使用checkbox标签来绑定roles数据进行展现。当checkbox标签的value在我们绑定的列表数据中存在的时候该checkbox将为选中状态。

    <form:form action="formTag/form.do" method="post" commandName="user">  
        <table>  
            <tr>  
                <td>Roles:</td>  
                <td>  
                   <form:checkbox path="roles" value="role1"/>Role1<br/>  
                   <form:checkbox path="roles" value="role2"/>Role2<br/>  
                   <form:checkbox path="roles" value="role3"/>Role3  
                </td>  
            </tr>  
        </table>  
    </form:form>  

     就上面代码而言就是当User拥有role1的时候对应的<form:checkbox path= "roles" value= "role1"/>就会为选中状态,也就是说roles列表中包含role1的时候该checkbox就会为选中状态。


参考:

http://haohaoxuexi.iteye.com/blog/1807330

http://www.cnblogs.com/liukemng/p/3754211.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值