s:select 在structs中的用法

1: 在jsp中写死了options的值, 注意,这时候list后面的"#"必不可少,而且非常重要

<s:select name="ecId" list="#{0:'NDS,1 EC,2 DB2',1:'NDS,4 EC,4 DB2'}" label="Select a EC Type" 

/>

 

2: 用hashmap来设置值:

在jsp中:

		

<s:select name="ecId" list="ecMap"

listKey="key"  listValue="value"  

headerKey="" headerValue="Select ecType"

label="Select a EC Type" 

/>

在java中:

		ecMap = new HashMap();

		ecMap.put(0, "NDS,1 EC,2 DB2");

		ecMap.put(1, "NDS,4 EC,4 DB2");

 

 

3: 用bean的list来设置值:

 

在jsp中:

 

<s:select name="ecId" list="ecTypeList"

listKey="id"  listValue="type"  

headerKey="" headerValue="Select ecType"

label="Select a EC Type" 

/> 

在java bean文件中设置属性:

        private String id;

	private String type;

	

	public EcType(String id,String type){

		this.setId(id);

		this.type = type;

	}



	public void setId(String id) {

		this.id = id;

	}



	public String getId() {

		return id;

	}



	public void setType(String type) {

		this.type = type;

	}



	public String getType() {

		return type;

	}

在action文件中添加list:

	private ArrayList<EcType> ecTypeList;

	public void setEcName(String ecName) {

		this.ecName = ecName;

	}

	public String getEcName() {

		return ecName;

	}

	public void setEcTypeList(ArrayList<EcType> ecTypeList) {

		this.ecTypeList = ecTypeList;

	}

	public ArrayList<EcType> getEcTypeList() {

		return ecTypeList;

	}

第三种方法一定要确定jsp,bean,action三者之间要完全对应,否则会出现下拉框有内容,但显示空白

你可能感兴趣的:(select)