js省市县三级联动下拉列表的示例
2018-01-31 14:03
447 查看
html代码 三个下拉列表
<select id = "province" onchange ="selectOnChange(this.options[this.options.selectedIndex].value,'city')">
<c:choose>
<c:when test="${not empty areaList}">
<c:forEach items="${areaList}" var="var" varStatus="vs">
<option value="${var.ID}" >
${var.AREANAME}
</option>
</c:forEach>
</c:when>
</c:choose>
</select>
<select id = "city" onchange ="selectOnChange(this.options[this.options.selectedIndex].value,'county')">
</select>
<select id = "county">
</select>
JS代码
function selectOnChange(SelId,toSelId){
//document.getElementById(toSelId).innerHTML="";
$.ajax({
url:"<%=basePath%>medium/findAreaByParentId.do",
type:"post",
cache: false,
data:"PARENTID="+SelId,
dataType:"json",
success : function(data){
createSelectObj(data.dataList,toSelId);
if(toSelId == "city"){ //当是省级下拉列表调用这个方法时 需要再模仿市级下拉列表调用一次
var val = document.getElementById(toSelId);
var index = val.selectedIndex;
var aa = val.options[index].value;
//var aa = val.options[val.options.selectedIndex].value;
selectOnChange(aa,"county");
}
},
error:function(XMLHttpRequest, textStatus, errorThrown) {
alert(XMLHttpRequest.status);
alert(XMLHttpRequest.readyState);
alert(textStatus);
}
});
}
function createSelectObj(arr,toSelId) {
if (arr != null && arr.length > 0) {
var obj = document.getElementById(toSelId);
obj.innerHTML = "";
for ( var o in arr) {
var op = document.createElement("option");
op.setAttribute("value", arr[o].ID);
//op.text=arr[o].name;//这一句在ie下不起作用,用下面这一句或者innerHTML
op.appendChild(document.createTextNode(arr[o].AREANAME));
obj.appendChild(op);
}
}
else{
var obj = document.getElementById(toSelId);
obj.innerHTML = "";
var op = document.createElement("option");
op.setAttribute("value", "");
op.appendChild(document.createTextNode("暂无"));
obj.appendChild(op);
}
}
Java代码
查询数据库返回一个省市县区List
<select id = "province" onchange ="selectOnChange(this.options[this.options.selectedIndex].value,'city')">
<c:choose>
<c:when test="${not empty areaList}">
<c:forEach items="${areaList}" var="var" varStatus="vs">
<option value="${var.ID}" >
${var.AREANAME}
</option>
</c:forEach>
</c:when>
</c:choose>
</select>
<select id = "city" onchange ="selectOnChange(this.options[this.options.selectedIndex].value,'county')">
</select>
<select id = "county">
</select>
JS代码
function selectOnChange(SelId,toSelId){
//document.getElementById(toSelId).innerHTML="";
$.ajax({
url:"<%=basePath%>medium/findAreaByParentId.do",
type:"post",
cache: false,
data:"PARENTID="+SelId,
dataType:"json",
success : function(data){
createSelectObj(data.dataList,toSelId);
if(toSelId == "city"){ //当是省级下拉列表调用这个方法时 需要再模仿市级下拉列表调用一次
var val = document.getElementById(toSelId);
var index = val.selectedIndex;
var aa = val.options[index].value;
//var aa = val.options[val.options.selectedIndex].value;
selectOnChange(aa,"county");
}
},
error:function(XMLHttpRequest, textStatus, errorThrown) {
alert(XMLHttpRequest.status);
alert(XMLHttpRequest.readyState);
alert(textStatus);
}
});
}
function createSelectObj(arr,toSelId) {
if (arr != null && arr.length > 0) {
var obj = document.getElementById(toSelId);
obj.innerHTML = "";
for ( var o in arr) {
var op = document.createElement("option");
op.setAttribute("value", arr[o].ID);
//op.text=arr[o].name;//这一句在ie下不起作用,用下面这一句或者innerHTML
op.appendChild(document.createTextNode(arr[o].AREANAME));
obj.appendChild(op);
}
}
else{
var obj = document.getElementById(toSelId);
obj.innerHTML = "";
var op = document.createElement("option");
op.setAttribute("value", "");
op.appendChild(document.createTextNode("暂无"));
obj.appendChild(op);
}
}
Java代码
查询数据库返回一个省市县区List
相关文章推荐
- php jquery ajax json 全国省市区三级联动下拉列表 简单实现
- Ajax省市地区下拉列表三级联动
- js三级地区选择插件,省市县级联下拉列表
- jQuey/js 省市县三级下拉框联动的回显(简单易懂)
- 由ajax,js,xml,php实现的三级联动省市县下拉功能
- 省市二级联动 通过省份选择城市 JS的简单应用 二级下拉列表
- js 省市下拉列表联动
- 关于省市区的下拉列表联动实现(JS+AJAX)
- php jquery ajax json 全国省市区三级联动下拉列表 简单实现
- js三级地区选择插件,省市县级联下拉列表 .
- js 省市下拉列表联动
- JS无刷新二级联动省市下拉列表
- 下拉列表联动显示(中国省市)三级联动
- JavaScript(JS)实现省市联动选择下拉列表
- php jquery ajax json 全国省市区三级联动下拉列表 简单实现
- js 省市下拉列表联动
- js三级地区选择插件,省市县级联下拉列表
- 移动端纯原生JS不依赖AJAX后台服务器实现省市县三级联动
- JS多级联动下拉列表(不限级数)
- 省市三级联动的DropDownList+Ajax的三种框架(aspnet/Jquery/ExtJs)示例