基于JavaScript实现省市联动效果


Posted in Javascript onJune 22, 2021

本文实例为大家分享了JavaScript实现省市联动效果的具体代码,供大家参考,具体内容如下

基于JavaScript实现省市联动效果

代码:

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>省市级联动效果</title>
</head>
<body onload="initProvince()">
省份:<select id="province" onchange="fillCity()"></select>
城市:<select  id="city"></select>
<script>
    /**
     * 初始化省份函数
     */
    function initProvince() {
        //声明存储省份的数组
        let provinceArr=["陕西省","四川省","河南省","山东省"];
        //将省份数组动态写入到下拉列表中
        //通过id获得省份列表对象
        let proovinceObj=document.getElementById("province");
        //设置未选择时,展示的内容
        let option=new Option("---请选择省份---","");
        proovinceObj.options.add(option);
        //循环遍历省份数组
        for (let province of provinceArr){
            //创建Option对象
            //参数一:列表显示的内容
            //参数二:option的values属性值
            let option = new Option(province,province);
            //将option对象添加到provinceObj对象中
            proovinceObj.options.add(option);
        }
    }
    //创建城市数组
    //声明一个用于存储城市的数组
    let cityArr=new Array();
    cityArr['陕西省']=['西安市','咸阳市','宝鸡市','汉中市','延安市'];
    cityArr['四川省']=['成都市','达州市','广元市','绵阳市','乐山市'];
    cityArr['河南省']=['郑州市','开封市','洛阳市','新乡市','焦作市'];
    cityArr['山东省']=['济南市','青岛市','莱州市','烟台市','德州市'];

    /**
     * 根据省份填充城市
     */
    function fillCity() {
        //获得当前选中的省份
        let provinceObj = document.getElementById("province");
        let province=provinceObj.value;
        //获得城市列表对象
        let cityObj = document.getElementById("city");
        //清空城市列表中的原有数据
        cityObj.options.length=0;
        //判断是否选择了省份
        if (province!=""){
            let cityOption = new Option("---请选择城市---","");
            cityObj.options.add(cityOption);
        }
        //根据该省份获得对应的城市数组,遍历城市数组
        for (let city of cityArr[province]){
            //将每个城市填充到城市列表中
            let cityOption = new Option(city,city);
            cityObj.options.add(cityOption)
        }
    }
</script>
</body>
</html>

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
js导入导出excel(实例代码)
Nov 25 Javascript
浅谈JavaScript中定义变量时有无var声明的区别
Aug 18 Javascript
jQuery中remove()方法用法实例
Dec 25 Javascript
《JavaScript DOM 编程艺术》读书笔记之DOM基础
Jan 09 Javascript
JS实现三个层重叠点击互相切换的方法
Oct 06 Javascript
JS生成一维码(条形码)功能示例
Jan 19 Javascript
vue 中swiper的使用教程
May 22 Javascript
微信小程序webview与h5通过postMessage实现实时通讯的实现
Aug 20 Javascript
在layer弹层layer.prompt中,修改placeholder的实现方法
Sep 27 Javascript
vue-cli3 取消eslint校验代码的解决办法
Jan 16 Javascript
vue实现简单全选和反选功能
Sep 15 Javascript
OpenLayers加载缩放控件使用方法详解
Sep 25 Javascript
JavaScript实现简单计时器
React实现动效弹窗组件
关于React Native 无法链接模拟器的问题
React-vscode使用jsx语法的问题及解决方法
vue3使用vue-router的完整步骤记录
一篇文章学会Vue中间件管道
Jun 20 #Vue.js
Ajax 的初步实现(使用vscode+node.js+express框架)
You might like
php 智能404跳转代码,适合换域名没改变目录的网站
2010/06/04 PHP
Eclipse中php插件安装及Xdebug配置的使用详解
2013/04/25 PHP
CI框架常用函数封装实例
2016/11/21 PHP
PHP如何根据文件头检测文件类型实例代码
2018/10/14 PHP
javascript 设置文本框中焦点的位置
2009/11/20 Javascript
一些主流JS框架中DOMReady事件的实现小结
2011/02/12 Javascript
JavaScript对象创建及继承原理实例解剖
2013/02/28 Javascript
7个jQuery最佳实践
2016/01/12 Javascript
卸载安装Node.js与npm过程详解
2016/08/15 Javascript
AngularJS入门教程之Helloworld示例
2016/12/25 Javascript
原生javascript实现读写CSS样式的方法详解
2017/02/20 Javascript
微信小程序实现笑脸评分功能
2018/11/03 Javascript
JavaScript中工厂函数与构造函数示例详解
2019/05/06 Javascript
Vue使用axios出现options请求方法
2019/05/30 Javascript
JavaScript实现多个物体同时运动
2020/03/12 Javascript
解决Tensorflow安装成功,但在导入时报错的问题
2018/06/13 Python
简单了解python 生成器 列表推导式 生成器表达式
2019/08/22 Python
用Python将Excel数据导入到SQL Server的例子
2019/08/24 Python
Python paramiko模块使用解析(实现ssh)
2019/08/30 Python
Python实现加密接口测试方法步骤详解
2020/06/05 Python
Python操控mysql批量插入数据的实现方法
2020/10/27 Python
关于css兼容性问题及一些常见问题汇总
2016/05/03 HTML / CSS
SQL Server 2000数据库的文件有哪些,分别进行描述。
2015/11/09 面试题
客户代表实习人员自我鉴定
2013/09/27 职场文书
教师党员思想汇报
2014/01/06 职场文书
最新的互联网创业计划书
2014/01/10 职场文书
优秀教师的感人事迹
2014/02/04 职场文书
12岁生日演讲稿
2014/05/14 职场文书
应届毕业生自荐信
2014/05/28 职场文书
安全生产目标管理责任书
2014/07/25 职场文书
试用期旷工辞退通知书
2015/04/17 职场文书
2015年市场营销工作总结
2015/07/23 职场文书
安全教育的主题班会
2015/08/13 职场文书
校运会广播稿
2015/08/19 职场文书
利用Python判断你的密码难度等级
2021/06/02 Python
详解Java分布式事务的 6 种解决方案
2021/06/26 Java/Android