jquery如何实现省市区联动的选择功能
一、需求分析
需要三个下拉框,分别代表省、市、区;
选择省份后,市下拉框根据省份信息进行动态加载,相应的区下拉框也会根据市级信息进行动态加载。
二、技术架构
HTML:首先需要定义三个下拉框(省、市、区)及其相关的id;
CSS:定义下拉框的样式;
JS/jQuery:主要实现下拉框的动态加载及用户选择时的数据传递。
三、技术实现
HTML页面结构
selectid="province">
/select>
selectid="city">
/select>
selectid="district">
/select>
数据加载
//先定义几个省市区数据
varprovinceData=[
{
id:'110101',name:'东城区'}
,
{
id:'110102',name:'西城区'}
,
{
id:'110105',name:'朝阳区'}
,
//...
];
varcityData=[
{
id:'110101',name:'北京市'}
,
{
id:'110201',name:'天津市'}
,
{
id:'120101',name:'上海市'}
,
//...
];
vardistrictData=[
{
id:'110101001',name:'东华门街道'}
,
{
id:'110101002',name:'景山街道'}
,
{
id:'110101003',name:'交道口街道'}
,
//...
];
//动态加载省份数据
$.each(provinceData,function(index,value){
$('#province').append('optionvalue="'+value.id+'">
'+value.name+'/option>
');
}
);
//根据省份信息动态加载城市数据
$('#province').on('change',function(){
varselectProvince=$(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('optionvalue="'+value.id+'">
'+value.name+'/option>
');
}
}
)
}
}
);
//根据城市信息动态加载区数据
$('#city').on('change',function(){
varselectCity=$(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('optionvalue="'+value.id+'">
'+value.name+'/option>
');
}
}
)
}
}
);
到此,相信大家对“jquery如何实现省市区联动的选择功能”有了更深的了解,不妨来实际操作一番吧!这里是网站,更多相关内容可以进入相关频道进行查询,关注我们,继续学习!
声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!
若转载请注明出处: jquery如何实现省市区联动的选择功能
本文地址: https://pptw.com/jishu/3716.html