Struts2系列—Form Tags(checkbox/checkboxlist )

Struts2系列—Form Tags(checkbox/checkboxlist )

     网络上关于Struts2方面资料不少,之所以再重复一些关于Struts2的知识,只是因为本人正在学习Struts2,而且在学习的途中也遇见了不少 的问题,由于没有学过Struts2以前的版本,学习途中也是比较的痛苦,在此仅想记录下我的学习历程。
     如果你对这个方面有深入研究,恳请你的指点;如果你也是初学者,希望这系列的博文对你有所帮助。

      Struts2中的checkbox和HTML中的复选框<input type="checkbox">差不多,而要实现复选框中的选项从服务器端获得,Struts2中的checkbox不提供这个功能,而是靠另一个标签checkboxlist实现的,看下面代码:
checkbox.jsp:
<% @ page language = " java "  import = " java.util.* "  pageEncoding = " UTF-8 " %>
<% @ taglib prefix = " s "  uri = " /struts-tags " %>
<! DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" >
< html >
    
< head >
    
</ head >

    
< body >
        
< s:checkbox  label ="足球"  name ="checkbox"  value ="football"  fieldValue ="true"   />
        
<!--  上面一行代码等同下面一行HTML代码,属性都很简单不再介绍 -->
        
< input  type ="checkbox"  name ="checkbox"  value ="football" /> 足球

    
</ body >
</ html >
效果图:


再看checkboxlist.jsp:
<% @ page language = " java "  import = " java.util.* "  pageEncoding = " UTF-8 " %>
<% @ taglib prefix = " s "  uri = " /struts-tags " %>
<! DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" >
< html >
    
< head >
    
< title > struts2 </ title >
    
</ head >
    
< body >
        
< s:checkboxlist  list ="foodList"  name ="food"  label ="food" />
        
< br >
        
< s:checkboxlist  list ="hobbyList"  name ="hobby"  label ="hobby" />
    
</ body >
</ html >
增加list集合里面映射类CheckboxlistAction.java:
package  com.kalman03.action;

import  java.util.ArrayList;
import  java.util.List;

import  com.opensymphony.xwork2.ActionSupport;

/**
 * @FileName CheckboxlistAction.java
 * 
 * @Author kalman03
 * 
 
*/
public   class  CheckboxlistAction  extends  ActionSupport {
    
private  List foodList;
    
private  List hobbyList;

    
public  List getFoodList() {
        
return  foodList;
    }

    
public  List getHobbyList() {
        
return  hobbyList;
    }

    @Override
    
public  String execute()  throws  Exception {
        foodList 
=   new  ArrayList < String > ();
        foodList.add(
" milk " );
        foodList.add(
" rice " );
        foodList.add(
" noodles " );

        hobbyList 
=   new  ArrayList < String > ();
        hobbyList.add(
" football " );
        hobbyList.add(
" basketball " );
        hobbyList.add(
" volleyball  " );
        
return  SUCCESS;

    }
}
在struts.xml里面配置好映射,即增加下列代码:
< action  name ="checkboxlisttag"  class ="com.kalman03.action.CheckboxlistAction" >
    
< result > /checkboxlist.jsp </ result >
</ action >
ok,在浏览器中输入:http://localhost:8080/test/checkboxlisttag.action,可以看到结果:

其实其他的标签大体类似,重在动手,我有时也是老遇见错误,久了就Ok了。




你可能感兴趣的:(Struts2系列—Form Tags(checkbox/checkboxlist ))