首页 > 其他分享 >js制作省与市地区级联,使用select标签。(选择不同的省,加载不同的市)

js制作省与市地区级联,使用select标签。(选择不同的省,加载不同的市)

时间:2024-09-10 10:52:53浏览次数:13  
标签:province city 级联 const option js document data select

  1. 数据定义:用一个对象 data 存储省和市的信息。
  2. 省份选择:通过遍历 data 对象,将省份添加到第一个 <select> 元素中。
  3. 城市更新:当选择省份时,调用 updateCities 函数,更新城市下拉列表。清空之前的城市选项,然后根据选中的省份更新城市列表。
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>省市级联选择</title>
</head>
<body>
    <select id="province" onchange="updateCities()">
        <option value="">请选择省</option>
    </select>
    <select id="city">
        <option value="">请选择市</option>
    </select>

    <script>
        const data = {
            '省1': ['市1-1', '市1-2', '市1-3'],
            '省2': ['市2-1', '市2-2'],
            '省3': ['市3-1', '市3-2', '市3-3', '市3-4']
        };

        const provinceSelect = document.getElementById('province');
        const citySelect = document.getElementById('city');

        // Populate provinces
        for (const province in data) {
            const option = document.createElement('option');
            option.value = province;
            option.textContent = province;
            provinceSelect.appendChild(option);
        }

        function updateCities() {
            const selectedProvince = provinceSelect.value;
            citySelect.innerHTML = '<option value="">请选择市</option>'; // Clear previous cities

            if (selectedProvince) {
                const cities = data[selectedProvince];
                for (const city of cities) {
                    const option = document.createElement('option');
                    option.value = city;
                    option.textContent = city;
                    citySelect.appendChild(option);
                }
            }
        }
    </script>
</body>
</html>

标签:province,city,级联,const,option,js,document,data,select
From: https://blog.csdn.net/qq_61236034/article/details/141953816

相关文章

  • GEE错误:Image.select: Band pattern ‘BQA‘ did not match any bands. Available ban
    目录错误原始代码Landsat8TOA数据介绍错误解析正确的代码 结果错误Errorinmap(ID=LC08_044034_20130603):Image.select:Bandpattern'BQA'didnotmatchanybands.Availablebands:[B1,B2,B3,B4,B5,B6,B7,B8,B9,B10,B11,QA_PIXEL,QA_RADSAT......
  • 基于nodejs+vue非结构化数据[程序+论文+开题] 计算机毕业设计
    本系统(程序+源码+数据库+调试部署+开发环境)带文档lw万字以上,文末可获取源码系统程序文件列表开题报告内容研究背景随着信息技术的飞速发展,数据量呈爆炸性增长,其中非结构化数据占据了绝大部分比例。非结构化数据,如文本、图像、音频、视频等,因其形式多样、内容丰富,在企业决......
  • 基于springboot+vue.js的网吧管理系统附带文章源码部署视频讲解等
    文章目录前言详细视频演示具体实现截图核心技术介绍后端框架SpringBoot前端框架Vue持久层框架MyBaits为什么选择我代码参考数据库参考测试用例参考源码获取前言......
  • 基于springboot+vue.js的校园服务系统附带文章源码部署视频讲解等
    文章目录前言详细视频演示具体实现截图核心技术介绍后端框架SpringBoot前端框架Vue持久层框架MyBaits为什么选择我代码参考数据库参考测试用例参考源码获取前言......
  • JS – 支持WORD上传的富文本编辑器
    编辑器:TinyMCE前端:vue2,vue3,vue-cli,html5,jquery后端:java,jsp,springboot,asp,asp.net,.netcore,php需求:导入word之前在网上也找过相关的资料,但是基本上都没什么用。能用的少,好用的就更少了。公司这块的话是做项目为主的,也有自己的产品,领导希望是在我们自己的产品中......
  • Linux:多路转接 select、poll、epoll
    1:select#include<sys/select.h>intselect(intnfds,fd_set*readfds,fd_set*writefds,fd_set*exceptfds,structtimeval*timeout);   select函数是POSIX标准定义的一个系统调用,用于监视多个文件描述符(filedescriptors),以确定它们是否具有可读、可写或异常......
  • js的常用类和对象
    1.JSON,json是js中一个很常用的类,通常用来转化信息来进行信息的传输,其中JSON可以将一个对象转化成字符串使用JSON的stringify的方法,也可以使用字符串来获取JSON的对象使用parse2.BOM,BOM包括很多个对象有window,history等等,其中我们平时使用windows调用函数是,可以省略wind......
  • 使用js闭包实现可取消的axios请求
    在平常开发中,经常会遇到重复请求的情况,也许是因为网络问题,也许是因为接口问题等等,传统做法是客户端采用防抖来限制用户发送接口的频率,一般出个loading转圈圈的形式,但是很少使用取消请求的做法,现在我来记录一下,如何采用闭包来封装一个可取消请求的函数,首先需要了解的是1.闭包2.......
  • select...for update 到底是加了行锁,还是表锁?
    原文:select...forupdate到底是加了行锁,还是表锁?前言select...forupdate在MySQL中,是一种悲观锁的用法,一般情况下,会锁住一行数据,但如果没有使用正确的话,也会把整张表锁住。1.要什么要用行锁?假如现在有这样一种业务场景:用户A给你转账了2000元,用户B给你转账了3000......
  • Vue.js 组件设计详解
    在现代Web开发中,组件化设计已经成为构建可维护和可扩展应用程序的关键策略之一。而Vue.js作为一个流行的前端框架,以其简单易用、灵活和高效的特点,成为开发者的首选之一。本文将详细介绍如何设计Vue组件,涵盖从基础到高级的概念和实践,包括组件的创建、通信、复用、优化和......