JS获取省市区/县,layui获取省市区,layui实现省市区联动,jquery实现省市区联动

news2024/11/24 7:33:35

前言

通过JS方式获取省市区数据,可自己手动更改JS文件数据
非常简单

效果

在这里插入图片描述

实现

百度网盘链接: https://pan.baidu.com/s/1RktJgXY0NP7Eq0ohvBPOEA 提取码: 477z
gitee下载链接:https://gitee.com/yuanyongqiang/common-files/blob/master/area.js

下载的area.js说明

默认对象layArea,
layArea.array:存储结构为树形
layArea.array[0].address:获取的是中文名称
layArea.array[0].code:获取的是编号值

引入area.js,开始使用

引入方式可以使用script标签

<script type="text/javascript" src="js/util/area.js"></script>

或者使用layui配置

layui.config({
    base: "js/util/"
}).extend({
    layArea: "area",
});
layui.define(['form', 'layArea'], function (exports) {
	var form = layui.form;
	var layArea= layui.layArea;
	
});

省级

直接这么获取就是所有的数据,不过建议只获取第一级,也就是省级

var array = layArea.array;

市级

根据省级名称获取

var array = layArea.getCityList('广东省');

区级

根据省市名称获取

var array = layArea.getAreaList('广东省', '深圳市');

以上即可!

下面是基于layui相关的实现方式

html中,form中

<div class="layui-form-item">
	<label class="layui-form-label" title="所属省/市/区">
		所属省/市/区
	</label>
	<div class="layui-input-block">
		<div class="layui-input-inline"  style="width: 30%;">
			<select name="province" id="province" lay-filter="province" lay-search=""></select>
		</div>
		<div class="layui-input-inline"  style="width: 30%;">
			<select name="city" id="city" lay-filter="city" lay-search=""></select>
		</div>
		<div class="layui-input-inline"  style="width: 30%;">
			<select name="area" id="area" lay-filter="area" lay-search=""></select>
		</div>
	</div>
</div>

js 写个通用方法

/**
 * ---------------------------------------------------------------------------------------------------------------------
 * 加载省/市/区
 * @param array 数据:省/市/区
 * @param lables 设置给哪些标签
 * @param notId 设置标签前置空哪些标签
 * @returns
 */
function loadAddress(array, lables, notId) {
    var s = '<option value="">请选择</option>';
    if (array) {
        for (var i = 0; i < array.length; i++) {
            var obj = array[i];
            s += '<option value="' + obj.address + '" lay-id="' + obj.code + '">' + obj.address + '</option>';
        }
    }
    $(notId).empty();
    $(lables).html(s);
    form.render("select");
}

使用方法

    // 省级选择,获取市
    form.on('select(province)', function (data) {
        var array = layArea.getCityList(data.value);
        loadAddress(array, "#city", "#city,#area")
    });

    // 市级选择,获取地区/县
    form.on('select(city)', function (data) {
        var name1 = $("#province").val();
        var array = layArea.getAreaList(name1, data.value);
        loadAddress(array, "#area", "#area")
    });

    // 加载省份
    loadAddress(layArea.array, "#province", "#city,#area");

如上就可以实现级联联动。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/668605.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

超高压系列IXBX50N360HV、IXBT14N300HV、IXBH32N300高压反向导通 (BiMOSFET™) IGBT器件

器件介绍&#xff1a; 超高压系列3000V - 3600V反向导通 (BiMOSFET™) IGBT将MOSFET和IGBT的优势相结合。这些高压器件的饱和电压和内置二极管的正向电压降均具有正电压温度系数&#xff0c;因此非常适合用于并联运行。“自由”内置体二极管用作保护二极管&#xff0c;为器件关…

LibOS Gramine安装

文章目录 参考资料Gramine安装运行helloworld升级kernel到5.15 参考资料 Gramine Quick start Gramine安装 Gramine安装要求&#xff1a; Linux 内核版本至少为 5.11&#xff08;启用 SGX 驱动程序&#xff09; 如果是5.4.0-150-generic版本&#xff0c;则可以参考《Install …

Baumer工业相机堡盟工业相机如何通过BGAPISDK将相机图像写入相机内存(C#)

Baumer工业相机堡盟工业相机如何通过BGAPISDK将相机图像写入相机内存&#xff08;C#&#xff09; Baumer工业相机Baumer工业相机BGAPISDK和相机内存的技术背景Baumer工业相机通过BGAPISDK将相机图像写入相机内存功能1.引用合适的类文件2.通过BGAPISDK将相机图像写入相机内存功能…

ADManager Plus:提升企业管理效率的强大利器

导语&#xff1a; 在当今数字化时代&#xff0c;企业管理的重要性不言而喻。有效的企业管理可以提高生产力、优化业务流程&#xff0c;并促进组织的持续增长。而ADManager Plus作为一款功能强大的企业管理工具&#xff0c;为企业提供了全面的解决方案&#xff0c;帮助企业管理…

从0到1精通自动化测试,pytest自动化测试框架,Fixture之conftest.py与yield实现teardown(四)

目录 一、Fixture之conftest.py 1、Fixture优势 2、fixture参数传入&#xff08;scope”function”&#xff09; 3、conftest.py配置 二、Fixture之yield实现teardown 1、scope“module” 2、yield执行teardown 3、yield遇到异常 4、addfinalizer终结函数 一、Fixture…

【云原生•监控】基于Prometheus的云原生集群监控(理论+实践)-01

【云原生•监控】基于Prometheus的云原生集群监控(理论实践)-01 前言 「笔者已经在公有云上搭建了一套临时环境&#xff0c;可以先登录体验下&#xff1a;」 http://124.222.45.207:17000/login 账号&#xff1a;root/root.2020 云原生监控挑战 Prometheus 是用 Go 语言编写&am…

FreeRTOS实时操作系统(四)中断任务管理

系列文章目录 文章目录 系列文章目录前言中断优先级FreeRTOS中的中断管理一系列中断管理寄存器中断配置寄存器中断屏蔽寄存器 中断管理实战 前言 跟着正点原子学习一下中断管理&#xff0c;正好之间没有总结过&#xff0c;还有些地方不清楚。 中断优先级 中断的工作方式就不介…

Oracle的DCL、DDL、DML语言学习使用——oracle入门学习(一)

Oracle的DCL、DDL、DML语言学习使用 前言1.SQL Plus1.1 命令行SQL PLUS使用sqlplus /nologsqlplus / as sysdba 1.2 oracle自带SQL PLUS使用1.3 sys和system用户的区别 2. Oracle的体系结构3.DCL语言什么是DCL语言3.1 查看数据文件位置和表空间3.2 创建表空间3.3 删除表空间3.4…

鉴源实验室丨TBOX通讯模组AT指令测试

作者 | 李伟 上海控安安全测评部总监 来源 | 鉴源实验室 引言&#xff1a;上一篇文章我们讲了整车的OTA升级测试(详解车载设备FOTA测试&#xff09;&#xff0c;本篇我们介绍在车载零配件上比较少见却很实用的测试&#xff1a;通讯模组的AT&#xff08;Attention&#xff09;指…

总结Nginx的安装、配置与设置开机自启

在Ubuntu下安装Nginx有以下方法&#xff0c;但是如果想要安装最新版本的就必须下载源码包编译安装。 一、Nginx安装 1、基于APT源安装 sudo apt-get install nginx 安装好的文件位置&#xff1a; /usr/sbin/nginx&#xff1a;主程序 /etc/nginx&#xff1a;存放配置文件 /us…

高压放大器可以驱动电机吗

高压放大器可以驱动电机。事实上&#xff0c;高压放大器在许多应用中都是电机控制的核心部件之一。高压放大器可以将输入信号转换为高电压和高电流&#xff0c;从而驱动电动机。 一、高压放大器的原理 高压放大器是一种电子设备&#xff0c;用于将低功率信号转换为高功率信号。…

云原生之深入解析如何在Kubernetes下快速构建企业级云原生日志系统

一、概述 ELK 是三个开源软件的缩写&#xff0c;分别表示 Elasticsearch , Logstash, Kibana , 它们都是开源软件。新增了一个 FileBeat&#xff0c;它是一个轻量级的日志收集处理工具 (Agent)&#xff0c;Filebeat 占用资源少&#xff0c;适合于在各个服务器上搜集日志后传输…

Lombok你不知道的用法

Lombok是大家经常用的一款工具&#xff0c;它可以帮我们减少很多重复代码的书写&#xff0c;但是我们对它的使用&#xff0c;可能更多局限于实体类的编写&#xff0c;比如说通过Data注解实现减少getter/setter/toString等方法的编写&#xff0c;其实它还有更多的注解功能&#…

美依礼芽破圈!小红书数据解读,如何拨动二次元心弦?

今年&#xff0c;二次元存在感爆棚。新世代下二次元群体愈发壮大&#xff0c;不少博主发布二次元内容、品牌也试图融入二次元圈。那么&#xff0c;如何与之打成一片呢&#xff1f;今天&#xff0c;通过小红书数据&#xff0c;我们来解读二次元的内容方向。 点赞破8亿&#xff0…

【每日一题】1595. 连通两组点的最小成本

【每日一题】1595. 连通两组点的最小成本 1595. 连通两组点的最小成本题目描述解题思路 1595. 连通两组点的最小成本 题目描述 给你两组点&#xff0c;其中第一组中有 size1 个点&#xff0c;第二组中有 size2 个点&#xff0c;且 size1 > size2 。 任意两点间的连接成本…

对象的构造

问题 对象中成员变量的初始值是多少&#xff1f; 成员变量的初始值 #include <stdio.h>class Test { private:int i;int j; public:int getI() { return i; }int getJ() { return j; } };Test gt;int main() {printf("gt.i %d\n", gt.getI());printf("…

UE中使用Editor Utility Widget创建编辑器工具

在UE中可以使用EditorUtilityWidget创建编辑器面板工具&#xff0c;方便平时的开发。在UE4中使用编辑器UI需要开启对应插件&#xff0c;而UE5中则默认启用&#xff0c;下面就来学习一下。 1.UI创建 1.1.在Content Browser中右键&#xff0c;找到Editor Utilities即可创建编辑…

[MySQL]不允许你不会SQL语句之查询语句

&#x1f3ac; 博客主页&#xff1a;博主链接 &#x1f3a5; 本文由 M malloc 原创&#xff0c;首发于 CSDN&#x1f649; &#x1f384; 学习专栏推荐&#xff1a;LeetCode刷题集&#xff01; &#x1f3c5; 欢迎点赞 &#x1f44d; 收藏 ⭐留言 &#x1f4dd; 如有错误敬请指…

分享几个AI绘图的学习网址

AI绘图是一种使用人工智能技术来创建图形和图像的技术。 从技术角度来看&#xff0c;AI绘图是一个非常有趣和不断发展的领域。随着人工智能技术的不断进步&#xff0c;AI绘图也在不断地发展和创新&#xff0c;现在已经成为数字艺术领域中的一个重要分支。 AI绘图的出现也为许多…

2023年的深度学习入门指南(17) - 深度学习的硬件加速技术

2023年的深度学习入门指南(17) - 深度学习的硬件加速技术 有了前面的知识之后&#xff0c;想必大家对于算力需求的理解已经越来越深刻了。 除了使用CPU&#xff0c;GPU这样的通用器件之外&#xff0c;采用专用的硬件来进行加速是一个大家都能想到的选择。 其中的代表器件就是…