下拉框 显示name 隐藏code

时间:2023-03-10 04:31:22
下拉框 显示name 隐藏code

暂未做详细整理, 后期有机会完善

jsp
是否有效:
<s:select id="queryIsValid" name="configBean.queryIsValid" data="${configBean.queryIsValid}" cssClass="box_cangdan" list="#{'':''}"></s:select> js
var isValidData = [{"value":"0","name":"否"},
{"value":"1","name":"是"}]; /**
* 绑定是否有效
*/
function bindIsValidData(idArray){
$.each(idArray, function(i, n){
var oldValue = $("#"+n).attr("data");
$("#"+n).empty();
$("#"+n).append("<option value=''></option>");
for(var i in isValidData){
$("#"+n).append("<option value='"+isValidData[i].value+"'>"+isValidData[i].name+"</option>");
}
$("#"+n).val(oldValue);
});
} $(function(){
bindIsValidData(["queryIsValid"]);
}); 后台 - 具体的查询功能
EntBusinessConfigBean.java
属性(setter/getter)private String queryIsValid = ""; xxxAction
属性(setter/getter)private EntBusinessConfigBean configBean = new EntBusinessConfigBean(); //接收参数bean
map.put("queryIsValid", null==configBean?null:configBean.getQueryIsValid()); showBeans = entBusinessConfigService.queryBusinessConfigDic(map, page); Object queryIsValid = map.get("queryIsValid");
if (queryIsValid != null && queryIsValid.toString().trim().length() > 0) {
sql.append(" and t.Is_Valid = ? ");
params.add(queryIsValid);
} //List<Map<String, Object>>
return new SQLQueryAdapter(this.hibTemplate).executeNativeSqlResultMap(sql.toString(), params,page);

Java后台返回Map(自动转Json),前端进行遍历处理

返回数据格式如下

{
"result": true,
"operModuleMap": [{
"value": "舱单申报",
"key": "AIRCDSB"
}, {
"value": "信息共享",
"key": "AIRXXGX"
}, {
"value": "运输工具申报",
"key": "AIRYSGJSB"
}]
}

后端Struts部分代码

//用于Ajax返回数据(setter/getter)
private Map<String,Object> validateExists = new HashMap<String, Object>(); @Action(value = "cheangeDomainCode",
results = {
@Result(name = "success", type = "json", params= {"root","validateExists"})}
)
public String cheangeDomainCode(){
try {
String domainCode = SessionUtil.getRequest().getParameter("domainCode");
Map<String, String> map = new HashMap<String, String>();
map.put("domainCode", domainCode);
operModuleMap = operationalGuidelinesConfigService.queryOperModuleByDomainCode(map);
if (null != operModuleMap && operModuleMap.size() > 0) {
validateExists.put("result", true);
validateExists.put("operModuleMap", operModuleMap);
} else {
validateExists.put("result", false);
validateExists.put("info", "没有找到符合条件的记录!");
}
} catch (Exception e) {
log.error("[Action cheangeDomainCode Exception message]: "+e.getMessage(), e);
e.printStackTrace();
validateExists.put("result", false);
validateExists.put("info", e.getMessage());
}
return SUCCESS;
}

前端使用全部变量接收

//全局变量: 业务模块名称
var operModuleArr = "";
//查询业务模块名称, 用于下拉框数据填充满
function findOperModuleMap(domainCode, moduleCode) {
$.ajax({
url:"cheangeDomainCode.action?domainCode="+domainCode,
dataType : "json",
async: false, //默认为true,改为false 则为同步请求
cache: false,
success:function(data){
if (data.result) {
operModuleArr = data.operModuleMap;
}
}
});
}

前端进行遍历追加到下拉选项

$("#operModuleMap").empty();
$("#operModuleMap").append("<option value=''>请选择</option>");
for(var i=0; i < data.operModuleMap.length; i++){
$("#operModuleMap").append("<option value="+data.operModuleMap[i].key+">"+data.operModuleMap[i].key + "/" +data.operModuleMap[i].value+"</option>");
/*if(!isEmpty(moduleCode) && data.operModuleMap[i].key==moduleCode) {
$("#operModuleMap").append("<option value="+data.operModuleMap[i].key+" selected>"+data.operModuleMap[i].key + "/" +data.operModuleMap[i].value+"</option>");
}else {
$("#operModuleMap").append("<option value="+data.operModuleMap[i].key+">"+data.operModuleMap[i].key + "/" +data.operModuleMap[i].value+"</option>");
}*/
}