Struts2系列—Form Tags(autocompleter )

Struts2系列—Form Tags(autocompleter )

      网络上关于Struts2方面资料不少,之所以再重复一些关于Struts2的知识,只是因为本人正在学习Struts2,而且在学习的途中也遇见了不少 的问题,由于没有学过Struts2以前的版本,学习途中也是比较的痛苦,在此仅想记录下我的学习历程。
      如果你对这个方面有深入研究,恳请你的指点;如果你也是初学者,希望这系列的博文对你有所帮助。
     
      个人感觉autocompleter用处比较明显,就是一个智能感知。更体现了struts2的灵活性。看实例:
      autocompletertag.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 >
    
< s:head  theme ="ajax"   />

    
< body >
        
< s:autocompleter  name ="test"  list ="{'湖南','上海','北京','广东'}"
            autoComplete
="false"   />

        
< s:autocompleter  list ="provice"  name ="provice"   />
    
</ body >
</ html >
     在src目录的com.kalman03.action包下建一个AutocompleterAction.java:
package  com.kalman03.action;

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

import  com.opensymphony.xwork2.ActionSupport;

/**
 * @FileName AutocompleterAction.java
 * 
 * @Author kalman03
 * 
 
*/
public   class  AutocompleterAction  extends  ActionSupport {

    
private  List provice;

    @Override
    
public  String execute()  throws  Exception {
        List arl 
=   new  ArrayList();
        arl.add(
" 湖南 " );
        arl.add(
" 湖北 " );
        arl.add(
" 上海 " );
        arl.add(
" 北京 " );
        arl.add(
" 天津 " );
        arl.add(
" 广东 " );
        
this .setProvice(arl);
        
return  SUCCESS;
    }

    
public  List getProvice() {
        
return   this .provice;
    }

    
public   void  setProvice(List provice) {
        
this .provice  =  provice;
    }
}
      在struts.xml内增加代码:
< action  name ="autocompletertag"  class ="com.kalman03.action.AutocompleterAction" >
   
< result > /autocompletertag.jsp </ result >
</ action >
      OK,在浏览器输入http://localhost:8080/myweb/autocompletertag.action,可以看到效果:


注意:<s:head theme="ajax" />我们在JSP里面增加一句这样的话,关于struts2标签的主题日后讲解,这里顺便提下,当theme为simple时,那么autocompleter标签相当于HTML中的 ComboBox,当且theme为ajax时,list才能从action里面获得动态的值。

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