Struts2中 2级联动标签和select标签 参数传递的问题
<s:doubleselectlist="#ts.place"listKey="pid"listValue="pname"name="userdetail.provinc...
<s:doubleselect list="#ts.place" listKey="pid" listValue="pname" name="userdetail.province" doubleList="#ts.citys[top]" doubleListKey="cid" doubleListValue="cname" doubleName="userdetail.city" label="所在城市"/>
<s:select name="userdetail.job" list="{}" label="您的职业" headerKey="0" emptyOption="true">
<s:optgroup list="#{1:'开发工程师',2:'部署',3:'测试',4:'数据库管理员'}" label="IT行业"/>
<s:optgroup list="#{1:'老师',2:'学生',3:'教育机构'}" label="教育行业"/>
<s:optgroup list="#{1:'公务员',2:'自主创业',3:'工人'}" label="其他行业" />
</s:select>
标签内容如上,现在联动什么的已经实现了,问题在于,表单传递到Action的数据是id也就是数字(2级联动中表单选的某个城市,比如郑州,传递过去以后是郑州的id编号)。我希望传递过去的是内容,比如选郑州传的就是郑州。select中也是,希望传递的是职业的名称。以上 多谢 展开
<s:select name="userdetail.job" list="{}" label="您的职业" headerKey="0" emptyOption="true">
<s:optgroup list="#{1:'开发工程师',2:'部署',3:'测试',4:'数据库管理员'}" label="IT行业"/>
<s:optgroup list="#{1:'老师',2:'学生',3:'教育机构'}" label="教育行业"/>
<s:optgroup list="#{1:'公务员',2:'自主创业',3:'工人'}" label="其他行业" />
</s:select>
标签内容如上,现在联动什么的已经实现了,问题在于,表单传递到Action的数据是id也就是数字(2级联动中表单选的某个城市,比如郑州,传递过去以后是郑州的id编号)。我希望传递过去的是内容,比如选郑州传的就是郑州。select中也是,希望传递的是职业的名称。以上 多谢 展开
展开全部
创建properties文件或者枚举文件,然后action取得Id后根据id获取对应name。
import java.util.ArrayList;
import java.util.List;
import buss.console.common.SelectObject;
public enum IdTypeEnum {
身份证("a","身份证"),
private String id;
private String name;
public String getId() {
return id;
}
public void setId(String id) {
this.id = id;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
private IdTypeEnum(String id, String name) {
this.id = id;
this.name = name;
}
public static String getIdTypeNameById(String id) {
String res = null;
for(IdTypeEnum pe : IdTypeEnum.values()) {
if(pe.getId().equals(id)) {
res = pe.getName();
break;
}
}
return res;
}
}
import java.util.ArrayList;
import java.util.List;
import buss.console.common.SelectObject;
public enum IdTypeEnum {
身份证("a","身份证"),
private String id;
private String name;
public String getId() {
return id;
}
public void setId(String id) {
this.id = id;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
private IdTypeEnum(String id, String name) {
this.id = id;
this.name = name;
}
public static String getIdTypeNameById(String id) {
String res = null;
for(IdTypeEnum pe : IdTypeEnum.values()) {
if(pe.getId().equals(id)) {
res = pe.getName();
break;
}
}
return res;
}
}
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询