使用ajax给页面的多个下拉框动态赋值
来源:互联网 发布:出售微信扫号软件 编辑:程序博客网 时间:2024/06/06 07:04
一。前台页面
$.post("${ctx}/basedata/baseData.do?method=queryPlantUnitList",function(data){
var optionvalue=eval("("+data+")");
$.each(optionvalue, function(key, val){
if(key=="YESORNOT")
{
var yonval=val;
$("#virtualflag option").remove();
$("#tlflag option").remove();
$("#agcflag option").remove();
$("#hotflag option").remove();
$("#virtualflag").append("<option value='-1'>请选择</option>");
$("#tlflag").append("<option value='-1'>请选择</option>");
$("#agcflag").append("<option value='-1'>请选择</option>");
$("#hotflag").append("<option value='-1'>请选择</option>");
$.each(yonval, function(key, val){
$("#virtualflag").append('<option value="' +val.id+ '">' + val.name + '</option>');
$("#tlflag").append('<option value="' +val.id+ '">' + val.name + '</option>');
$("#agcflag").append('<option value="' +val.id+ '">' + val.name + '</option>');
$("#hotflag").append('<option value="' +val.id+ '">' + val.name + '</option>');
});
}else if(key=="UNITSTATE"){
var stateval=val;
$("#state option").remove();
$("#state").append("<option value='-1'>请选择</option>");
$.each(stateval, function(key, val){
$("#state").append('<option value="' +val.id+ '">' + val.name + '</option>');
});
}else if(key=="UNITAPPTYPE"){
var apptypeval=val;
$("#apptype option").remove();
$("#apptype").append("<option value='-1'>请选择</option>");
$.each(apptypeval, function(key, val){
$("#apptype").append('<option value="' +val.id+ '">' + val.name + '</option>');
});
}else if(key=="UNITBASETYPE"){
var bastypeval=val;
$("#basetype option").remove();
$("#basetype").append("<option value='-1'>请选择</option>");
$.each(bastypeval, function(key, val){
$("#basetype").append('<option value="' +val.id+ '">' + val.name + '</option>');
});
}else if(key=="UNITDISPTCHTYPE"){
var dispatchval=val;
$("#disptchtype option").remove();
$("#disptchtype").append("<option value='-1'>请选择</option>");
$.each(dispatchval, function(key, val){
$("#disptchtype").append('<option value="' +val.id+ '">' + val.name + '</option>');
});
}else if(key=="POWERPLANT"){
var plantval=val;
$("#parentplantname option").remove();
$("#parentplantname").append("<option value='-1'>请选择</option>");
$.each(plantval, function(key, val){
$("#parentplantname").append('<option value="' +val.id+ '">' + val.name + '</option>');
});
}else if(key=="PLANTUNIT"){
var unitval=val;
$("#planunit option").remove();
$("#planunit").append("<option value='-1'>请选择</option>");
$.each(unitval, function(key, val){
$("#planunit").append('<option value="' +val.id+ '">' + val.name + '</option>');
});
}
});
二、html代码
<tr>
<td width="15%" height="28">
<div align="right"><font color="red">*</font> 基本类型:</div></td>
<td width="35%" height="28" bgcolor="ffffff" align="left">
<select id="basetype" name="basetype">
</select>
<input id="basetypevalue" type="hidden" value="" >
</td>
<td width="15%" height="28">
<div align="right"><font color="red">*</font> 机组应用类型:</div></td>
<td width="35%" height="28" bgcolor="ffffff" align="left">
<select id="apptype" name="apptype">
</select>
<input id="apptypevalue" type="hidden" value="" >
</td>
</tr>
<tr>
<td width="15%" height="28">
<div align="right"><font color="red">*</font> 调度类型:</div></td>
<td width="35%" height="28" bgcolor="ffffff" align="left">
<select id="disptchtype" name="disptchtype">
</select>
<input id="disptchtypevalue" type="hidden" value="" >
</td>
<td width="15%" height="28">
<div align="right"><font color="red">*</font> 状态:</div></td>
<td width="35%" height="28" bgcolor="ffffff" align="left">
<select id="state" name="state">
</select>
<input id="statevalue" type="hidden" value="" >
</td>
</tr>
<tr>
<td width="15%" height="28">
<div align="right"> 额定容量:</div></td>
<td width="35%" height="28" bgcolor="ffffff" align="left" class="word" >
<input id="maxcapacity" name="maxcapacity" type="text"
value="" onkeypress="return event.keyCode>=48&&event.keyCode<=57||event.keyCode==46" class="w220" />(MW)</td>
<td width="15%" height="28">
<div align="right"> 机组最小技术出力:</div></td>
<td width="35%" height="28" bgcolor="ffffff" align="left">
<input id="mincapacity" name="mincapacity" onkeypress="return event.keyCode>=48&&event.keyCode<=57||event.keyCode==46" type="text"
value="" class="w220" />(MW)</td>
</tr>
三、后台代码
public void queryPlantUnitList(HttpServletRequest request,
HttpServletResponse response, ModelMap modelMap) throws Exception {
StringBuffer json = new StringBuffer();
response.setContentType("text/html;charset=UTF-8");
Map<String, List<String[]>> plantunitListInfo = baseDataManager.getTypeList();
int count=plantunitListInfo.size();
json.append("{");
for (Map.Entry entry : plantunitListInfo.entrySet()) {
count--;
String key = entry.getKey().toString();
json.append("\""+key+"\"");
json.append(":");
json.append("[");
List<String[]> values = (List<String[]>) entry.getValue();
for(int i=0;i<values.size();i++)
{
json.append("{");
json.append("\"id\":");
String[] info=values.get(i);
json.append("\"" +info[0] + "\"").append(",").append("\"name\":").append("\""+info[1]+"\"");
json.append("}");
if (i < values.size() - 1) {
json.append(",");
}
}
json.append("]");
if (count>=1) {
json.append(",");
}
}
json.append("}");
response.getWriter().println(json.toString());
System.out.println(json.toString());
response.getWriter().flush();
}
四、查询处理
getJdbcTemplate().query(sql1, new ResultSetExtractor() {
public Object extractData(ResultSet rs) throws SQLException,
DataAccessException {
ResultSetMetaData med = rs.getMetaData();
int intColn = med.getColumnCount();
while (rs.next()) {
String[] info = new String[intColn];
for (int j = 0; j < intColn; j++) {
info[j] = rs.getString(j + 1);
if (info[j] == null || info[j].trim().equals("null") || info[j].trim().equals("")) {
info[j] = "";
}
}
datalist.add(info);
}
return null;
}
});
Map<String,List<String[]>> returnMap = new HashMap<String,List<String[]>>();
if (datalist != null) {
for (String[] stra : datalist) {
List<String[]> list = returnMap.get(stra[0]);
if(list == null){
list = new ArrayList<String[]>();
returnMap.put(stra[0], list);
}
list.add(new String[]{stra[1],stra[2]});
}
}
return returnMap;
- 使用ajax给页面的多个下拉框动态赋值
- ajax struts2 给下拉框赋值
- struts2+jquery+ajax给下拉框赋值
- jquery动态给下拉框赋值
- 用thymeleaf用标签给页面select下拉框赋值
- AJAX读取XML赋值给下拉列表
- 获取物料的分类特性动态赋值给下拉列表框
- js动态给下拉列表赋值
- 动态给文本框赋值 和 找页面控件的方法
- js给下拉框赋值
- 用Ajax实现给静态页面赋值
- 使用ajax动态加载select下拉框
- ajax里jquery给th动态赋值
- bootstrap下拉框动态赋值
- ajax动态下拉框的级联操作
- 909422229_JSP页面动态下拉菜单Ajax
- Excel 中给下拉框赋值
- DotNet中三种方法给下拉框赋值
- 关于MVC将CSV格式文件保存到指定地址的BUG修正
- INotifyPropertyChanged用法
- Java 邮件发送
- MAC OS 添加环境变量
- c++中const的作用
- 使用ajax给页面的多个下拉框动态赋值
- 使用RVM安装Ruby
- 不同的GCD算法
- Problem 2002
- 云计算真的是pc走向没落的推手吗
- JavaFx(转)
- Vision引擎中着色器库创建和文件格式介绍
- 百度地图API 简单使用技巧一
- linux命令之make、clean及其组合命令