jquery如何实现省市区联动的选择功能
本篇内容主要讲解“jquery如何实现省市区联动的选择功能”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“jquery如何实现省市区联动的选择功能”吧!
一、需求分析
需要三个下拉框,分别代表省、市、区;
选择省份后,市下拉框根据省份信息进行动态加载,相应的区下拉框也会根据市级信息进行动态加载。
二、技术架构
HTML:首先需要定义三个下拉框(省、市、区)及其相关的id;
CSS:定义下拉框的样式;
JS/jQuery:主要实现下拉框的动态加载及用户选择时的数据传递。
三、技术实现
HTML页面结构
<select id="province"></select>
<select id="city"></select>
<select id="district"></select>
数据加载
//先定义几个省市区数据
var provinceData = [
{ id: '110101', name: '东城区' },
{ id: '110102', name: '西城区' },
{ id: '110105', name: '朝阳区' },
//...
];
var cityData = [
{ id: '110101', name: '北京市' },
{ id: '110201', name: '天津市' },
{ id: '120101', name: '上海市' },
//...
];
var districtData = [
{ id: '110101001', name: '东华门街道' },
{ id: '110101002', name: '景山街道' },
{ id: '110101003', name: '交道口街道' },
//...
];
//动态加载省份数据
$.each(provinceData, function (index, value) {
$('#province').append('<option value="' + value.id + '">' + value.name + '</option>');
});
//根据省份信息动态加载城市数据
$('#province').on('change', function () {
var selectProvince = $(this).val();
$('#city').empty();
$('#district').empty();
if (selectProvince === '') {
$('#city').prop('disabled', true);
$('#district').prop('disabled', true);
} else {
$('#city').prop('disabled', false);
$('#district').prop('disabled', true);
$.each(cityData, function (index, value) {
if (value.id.substring(0, 2) === selectProvince.substring(0, 2)) {
$('#city').append('<option value="' + value.id + '">' + value.name + '</option>');
}
})
}
});
//根据城市信息动态加载区数据
$('#city').on('change', function () {
var selectCity = $(this).val();
$('#district').empty();
if (selectCity === '') {
$('#district').prop('disabled', true);
} else {
$('#district').prop('disabled', false);
$.each(districtData, function (index, value) {
if (value.id.substring(0, 4) === selectCity.substring(0, 4)) {
$('#district').append('<option value="' + value.id + '">' + value.name + '</option>');
}
})
}
});
相关内容
这些是最新的
热门排行
- THINKPHP5+GatewayWorker+Workerman 开发在线客服系统
- 在手机浏览器网页中点击链接跳转到微信界面的方法
- 尊云网站目录系统 ThinkPHP5网站分类目录程序 v2.2.221011
- CentOS 7安装shadowsock(一键安装脚本)
- AdminTemplate 基于LayUI 2.4.5实现的网站后台管理模板
- 用NW.js(node-webkit)开发多平台的桌面客户端
- PHP生成随机昵称/用户名
- THINKPHP5网站分类目录程序 尊云网站目录系统
- 织梦(DEDECMS)微信支付接口 微信插件
- 基于LayUI开发的 网站后台管理模板 BeginnerAdmin
- 响应式后台网站模板 - AMA.ADMIN
- layuiAdmin后台管理模板 Iframe版
- LayUI 1.0.9 升级 至 LayUI 2.1.4 方法
- 简洁清爽的会员中心模板
- jQuery幸运大转盘抽奖活动代码