html:checkbox设计方法
复选框的设计:复选框在struts的设计非常灵活,也是使用非常多的一种form的类型。
第一种使用Map操作。页面设计,()的为key值:
<html:checkbox property="linuxdist(redhat)" value="Redhat/Fedora Linux"/>Redhat/Fedora Linux<br> <html:checkbox property="linuxdist(mdk)" value="Mandrake Linux"/>Mandrake Linux<br> <html:checkbox property="linuxdist(suse)" value="Suse Linux"/>Suse Linux<br> <html:checkbox property="linuxdist(debian)" value="Debian/Debian-based Linux"/>Debian/Debian-based Linux<br> <html:checkbox property="linuxdist(none)" value="None above"/>None above
|
SurveyForm 中的对应代码。
private Map linuxdists=new HashMap();
public void setLinuxdists(Map linuxDists){ this.linuxdists=linuxDists; }
public Map getLinuxdists(){ return linuxdists; }
public void setLinuxdist(String key,String value){ linuxdists.put(key, value); }
public String getLinuxdist(String key){ return (String)linuxdists.get(key); }
|
注意其中的单数和复数。
第二种,数组的使用,property使用同一值。对应的页面中和ActionForm的定义。
<html:checkbox property="perferredDesktop" value="Gnome"/>Gnome<br> <html:checkbox property="perferredDesktop" value="KDE"/>KDE<br> <html:checkbox property="perferredDesktop" value="XFCE"/>XFCE<br> <html:checkbox property="perferredDesktop" value="Other window manager" />Other window manager
|
?
private String[] perferredDesktop; public void setPerferredDesktop(String[] perferredDesktop){ this.perferredDesktop=perferredDesktop; }
public String[] getPerferredDesktop(){ return perferredDesktop; }
|
第三种,boolean型的使用,当需要选择是和否,使用这种情况,此属性返回true或false 。
<html:checkbox property="surveyPublic" />
|
SurveyForm 中的定义:
private boolean surveyPublic ; public void setSurveyPublic(boolean surveyPublic){ this.surveyPublic=surveyPublic; }
public boolean isSurveyPublic(){ return surveyPublic; }
|