java+jsp+ajax+js生产联动列表
jsp页面
<!-- 分组类别和产品类别联动列表start -->
<div class="form-group">
<label class="col-sm-3 control-label" for="module2Type">分组类别</label>
<div class="col-sm-9">
<select class="form-control" onchange="getcnname();" id="module2Type" name="module2Type" >
<option seleted="true" value="">----请选择分组类别----</option>
<c:forEach var="dictInfo" items="${dictInfoList}">
<option value="${dictInfo.typeId }" id="${dictInfo.typeId }"> ${dictInfo.cnname } </option>
</c:forEach>
</select>
</div>
</div>
<div class="form-group">
<label class="col-sm-3 control-label" for="productType">产品类别</label>
<div class="col-sm-9">
<select class="form-control" name="productType" id="productType">
<option seleted="true" value="">----请选择产品类别----</option>
</select>
</div>
</div>
<!-- 分组类别和产品类别联动列表 end-->
ajax请求后台
//联动查询产品类别
function getcnname() {
var groupId = $("#module2Type").val();
$.ajax({
type: "POST",
dataType: "text",
url: '<%=path%>/findContentByGroupIdList.action',
data:{groupId : groupId },
success: function (data) {
document.getElementById("productType").innerHTML="<option seleted=\"true\" value=\"\">----请选择产品类别----</option>";
var proTypeContent = "";
var jsonStr = eval("("+data+")");
if (jsonStr!= null) {
var dic = jsonStr.data;
for(var i=0;i<dic.length;i++){
proTypeContent += "<option value='" + dic[i].typeId + "'>" + dic[i].cnname + "</option>";
}
$("#productType").append(proTypeContent);
}
},
error : function() {
alert("异常!");
}
});
}
java后台查询数据库
/*
*二级联动加载字典列表
*/
@SuppressWarnings("unchecked")
public void findContentByGroupIdList() {
request = ServletActionContext.getRequest();
response = ServletActionContext.getResponse();
String groupId = ConvertUtils.obj2Str(request.getParameter("groupId"), "");
Map<String, Object> readmap = request.getParameterMap();
Map<String, Object> map = ConvertUtils.transMap(readmap);// 将获得的参数转为可操作的map
map.put("groupId", groupId);
List<DictInfo> dictInfoList = dictInfoService.findContentByGroupId(map);
String dicInfoMsg = null;
if(dictInfoList != null && dictInfoList.size() > 0){
StringBuffer dicInfo = new StringBuffer();
for(int i=0;i<dictInfoList.size();i++){
DictInfo info = dictInfoList.get(i);
dicInfo.append("{");
dicInfo.append("\"cnname\":\""+info.getCnname()+"\",");
dicInfo.append("\"groupId\":\""+info.getGroupId()+"\",");
dicInfo.append("\"typeId\":\""+info.getTypeId()+"\"");
dicInfo.append("},");
}
dicInfoMsg = dicInfo.substring(0, dicInfo.length() - 1);
}
try {
response.setContentType("text/xml;charset=UTF-8");
response.setHeader("Cache-Control", "no-cache");
response.getWriter().write("{\"data\":[" + dicInfoMsg+ "]}");
} catch (Exception e) {
e.printStackTrace();
}
}
浙公网安备 33010602011771号