js实现一个省市区三级联动选择框代码分享
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了js实现一个省市区三级联动选择框代码分享,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含3789字,纯文字阅读大概需要6分钟。
内容图文
![js实现一个省市区三级联动选择框代码分享](/upload/InfoBanner/zyjiaocheng/368/11873f2a435e423a9e7e5d56aecaa2ee.jpg)
![js实现一个省市区三级联动选择框代码分享 - 文章图片](/upload/getfiles/0001/2021/4/23/20210423114014045.jpg)
=================================================
部分代码:
=================================================
当然首先你数据库中要有这个table,不然你没有数据.....^_^
代码如下:
<tr>
<td class="tr pr10 ">
所在地:
</td>
<td class="tl">
<input type="hidden" id="myProvince" value="${user.provinceId}"/>
<input type="hidden" id="myCity" value="${user.cityId}"/>
<input type="hidden" id="myRegion" value="${user.regionId}"/>
<select id="provinceSelect" name="user.provinceId">
<c:forEach items="${xzqhs}" var="xzqh">
<option value="${xzqh.provinceId}" ${user.regionId eq xzqh.provinceId?"selected='selected'":""}>${xzqh.province}</option>
</c:forEach>
</select>
<select id="citySelect" name="user.cityId">
</select>
<select id="regionSelect" name="user.regionId">
</select>
</td>
<td class="gray"></td>
</tr>
js代码:
代码如下:
/**
* 加载市
*
*/
function loadCity() {
var provinceId = $("#provinceSelect option:selected").val();
if(provinceId == null || provinceId == ""){
//alert("找不到省");
}else{
$.post(rootPath+"/loadCity", {
"q" : provinceId
}, function(data, result) {
if(data == "noId"){
alert("请求错误");
}else if(data == "null"){
alert("系统找不到属于该省的市");
}else{
data = eval("{" + data + "}");
var citySelect = $("#citySelect");
var myCity = $("#myCity").val();
citySelect.html("");
for ( var i = 0; i < data.length; i++) {
if(myCity != null && myCity != "" && myCity > 0 && myCity == data[i].id){
citySelect.append("<option selected='selected' value='" + data[i].id + "'>"
+ data[i].name + "</option>");
}else{
citySelect.append("<option value='" + data[i].id + "'>"
+ data[i].name + "</option>");
}
}
loadRegion();
}
});
}
};
/**
* 加载区
*
*/
function loadRegion() {
var cityId = $("#citySelect option:selected").val();
if(cityId == null || cityId == "" || cityId < 1){
alert("找不到市");
}else{
$.post(rootPath+"/loadRegion", {
"q" : cityId
}, function(data, result) {
if(data == "noId"){
alert("请求错误");
}else if(data == "null"){
alert("系统找不到属于该市的区");
}else{
data = eval("{" + data + "}");
var regionSelect = $("#regionSelect");
var myRegion = $("#myRegion").val();
regionSelect.html("");
for ( var i = 0; i < data.length; i++) {
if(myRegion != null && myRegion != "" && myRegion > 0 && myRegion == data[i].id){
regionSelect.append("<option selected='selected' value='" + data[i].id + "'>"
+ data[i].name + "</option>");
}else{
regionSelect.append("<option value='" + data[i].id + "'>"
+ data[i].name + "</option>");
}
}
}
});
}
};
/**
* 省改变事件
*
*/
$("#provinceSelect").change(loadCity);
/**
* 市改变事件
*
*/
$("#citySelect").change(loadRegion);
$(function() {
loadCity();
});
后台方法:
代码如下:
/**
* 加载城市数据
*
*/
public void loadCity() {
if (q == null || q.trim().equals("")) {
write("noId");
} else {
List<Xzqh> citys = xzqhService.queryCitys(q.trim());
if (citys == null || citys.size() < 1) {
write("null");
} else {
StringBuilder builder = new StringBuilder("[");
for (Xzqh city : citys) {
builder.append("{'id':'");
builder.append(city.getCityId());
builder.append("','name':'");
builder.append(city.getCity());
builder.append("'},");
}
if (builder.length() > 1)
builder.replace(builder.length() - 1, builder.length(), "]");
write(builder.toString());
}
}
}
/**
* 加载区数据
*
*/
public void loadRegion() {
if (q == null || q.trim().equals("")) {
write("noId");
} else {
List<Xzqh> citys = xzqhService.queryDistricts(q.trim());
if (citys == null || citys.size() < 1) {
write("null");
} else {
StringBuilder builder = new StringBuilder("[");
for (Xzqh district : citys) {
builder.append("{'id':'");
builder.append(district.getRegionId());
builder.append("','name':'");
builder.append(district.getRegion());
builder.append("'},");
}
if (builder.length() > 1)
builder.replace(builder.length() - 1, builder.length(), "]");
write(builder.toString());
}
}
}
内容总结
以上是互联网集市为您收集整理的js实现一个省市区三级联动选择框代码分享全部内容,希望文章能够帮你解决js实现一个省市区三级联动选择框代码分享所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。