原生JavaScript实现省市区三级联动插件详解
本文分享一个基于原生JavaScript实现的省市区三级联动插件。该插件通过配置容器ID数组,灵活支持省市区、省市或仅省份的显示模式。文章详细解析了插件的核心配置参数,包括容器ID、显示数组以及创建前后的回调函数,并提供了完整的代码示例与使用注意事项,帮助开发者快速集成地址选择功能。
前言与插件说明
前言
该插件的功能设计主要基于我司的具体业务场景。若读者有其他功能需求,欢迎在评论区留言,我将尽力进行扩展。如果您觉得此项目有用或喜欢,不妨给我的GitHub仓库点个Star支持一下。
环境准备与容器配置
准备
代码实现与参数详解
<div id="wrap"></div>
页面中用于承载联动内容的容器标签类型不作限制,只需确保为每个容器分配一个唯一的ID即可。
var address = new Address({
wrapId: 'wrap',
showArr: ['provinces','citys','areas'],
beforeCreat:function(){
console.log("beforeCreat")
},
afterCreat:function(){
console.log('afterCreat');
}
})
wrapId:"wrap" // 此处的wrap就是上面容器的id
showArr: ['provinces','citys','areas'] // 此处分别代表省、市、区容器的id
例如,若传递的数组['provinces','citys','areas']长度为3,则界面将显示省、市、区三级联动;数组中的三个字符串分别对应省、市、区三个容器的ID。

若传递的数组['provinces','citys']长度为2,则界面仅显示省、市两级联动;数组中的两个字符串分别对应省、市两个容器的ID。

若数组长度仅为1,则仅显示省级列表,此处不再赘述。
beforeCreat 插件开始创建前执行的回调函数
afterCreat 插件创建完成后执行的回调函数

效果预览与总结
预览

总结
如有其他功能需要增加,欢迎在评论区留言,我将尽力满足需求。若发现任何疏忽或错误,恳请指出,我会尽快修改以避免误导他人。
JS中将数组和对象混合组装为JSON字符串
2026-11-05 16:41:42
JS运算符优先级与结合性的区别是什么?
2026-11-05 13:22:02
JS Map怎么只遍历Key或Value
2026-11-05 13:00:36
D3.js 与 ECharts 选型对比:灵活性 vs 开发效率
2026-11-05 09:45:01
为什么JS中typeof []返回object:数组类型检测误区解析
2026-11-04 19:50:47
