我嘗試填充選擇下拉Struts的列表,但它不工作:Struts2的標籤填充下拉列表中選擇
我有我的動作類:
私人整數anneeResultat;
private List<AnneeResultat> anneeResultatList = new ArrayList<AnneeResultat>();
public Integer getAnneeResultat() {
return anneeResultat;
}
public void setAnneeResultat(Integer anneeResultat) {
this.anneeResultat = anneeResultat;
}
public List<AnneeResultat> getAnneeResultatList() {
this.anneeResultatList.add(new AnneeResultat(2005,"2005"));
this.anneeResultatList.add(new AnneeResultat(2006,"2006"));
this.anneeResultatList.add(new AnneeResultat(2007,"2007"));
this.anneeResultatList.add(new AnneeResultat(2008,"2008"));
this.anneeResultatList.add(new AnneeResultat(2009,"2009"));
this.anneeResultatList.add(new AnneeResultat(2010,"2010"));
this.anneeResultatList.add(new AnneeResultat(2011,"2011"));
return this.anneeResultatList;
}
public void setAnneeResultatsList(List<AnneeResultat> anneeResultatList) {
this.anneeResultatList = anneeResultatList;
}
public String execute(){
return SUCCESS;
}
這裏是類AnneeResultat:
public class AnneeResultat {
private Integer keyAnnee;
private String valueAnnee;
public AnneeResultat() {
}
public AnneeResultat(Integer key, String value) {
super();
this.keyAnnee = key;
this.valueAnnee = value;
}
public Integer getKey() {
return keyAnnee;
}
public void setKey(Integer key) {
this.keyAnnee = key;
}
public String getValue() {
return valueAnnee;
}
public void setValue(String value) {
this.valueAnnee = value;
}
}
這裏是我的JSP頁面上使用select標籤。我在我的頁面上使用瓷磚。這是我在我的網頁上的第一個版本:
<s:select name="anneeResultat" label="Année de résultats" list="anneeResultatList" listKey="keyAnnee" listValue="valueAnnee"></s:select>
其結果是,在我的頁面選擇標籤生成空元素的選擇框。我在選擇框上看不到價值。沒有值可見。 生成的代碼是:
<select name="anneeResultat" id="choices_anneeResultat">
<option value=""></option>
<option value=""></option>
<option value=""></option>
<option value=""></option>
<option value=""></option>
<option value=""></option>
<option value=""></option>
</select>
當我使用了以下選擇標記:
<s:select name="anneeResultat" label="Année de résultats" list="anneeResultatList" key="keyAnnee" value="valueAnnee"></s:select>
Hashcode方法被打印選擇框列表中。
生成的代碼是:
<select name="anneeResultat" id="choices_anneeResultat">
<option value="[email protected]">[email protected]</option>
<option value="[email protected]">[email protected]</option>
<option value="[email protected]">[email protected]</option>
<option value="[email protected]">[email protected]</option>
<option value="[email protected]">[email protected]</option>
<option value="[email protected]3de">[email protected]</option>
<option value="[email protected]">[email protected]</option>
</select>
我不知道該怎麼做才能解決這個問題。如果有人有一些想法,它會歡迎!