layui使用及简单的三级联动实现教程


Posted in Javascript onDecember 01, 2020

LayUI的使用

1 、引用

1、下载:官网:https://www.layui.com

2、使用方法:直接将解压好的压缩包拖拽到项目内

 将以下导入到html中: 

<link rel="stylesheet" href="/自己的地址/./layui/css/layui.css" rel="external nofollow" media="all">
 <script type="text/javascript" src="../自己的地址+/layui/layui.js"></script>

2、输出: hello world

<script type="text/javascript" src="./jquery-3.0.0/jquery-3.0.0.min.js"></script> 
 <!-- 直接将解压的文件辅助到项目 然后导入layui.css和layui.js -->
 <script type="text/javascript" src="../day/layui/css/layui.css"></script>
 <script type="text/javascript" src="../day/layui/layui.js"></script>
 <!--提示:如果是采用非模块化方式(最下面有讲解),此处可换成:./layui/layui.all.js -->
 <script type="text/javascript" src="./layui/layui.all.js"></script>
</head>
<body>

 <script>
  // layui.use(['layer', 'form'], function(){
  // var layer = layui.layer
  // ,form = layui.form;
  // layer.msg('Hello World');
  // });
  
  $(function(){
   layer.msg('Hello World');
  })
 </script> 

</body>
</html>

3、基于layui三级联动

layui使用及简单的三级联动实现教程

html
<!DOCTYPE html>
<html>
<head>
 <meta charset="utf-8">
 <meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1">
 <title>基于 Layui form 组件的省市区联动选择的实现</title>
 
 <script type="text/javascript" src="./jquery-3.0.0/jquery-3.0.0.min.js"></script> 
 <link rel="stylesheet" href="layui/css/layui.css" /> 
 <script src="layui/css/layui.css"></script>
 <script type="text/javascript" src="layui/layui.js"></script> 
 <script type="text/javascript" src="./data.js"></script>
 <script type="text/javascript" src="/province.js"></script>
 <script type="text/javascript">
  var defaults = {
   s1: 'provid',
   s2: 'cityid',
   s3: 'areaid',
   v1: null,
   v2: null,
   v3: null
  };
 
 </script>
</head>
<body>
 <div style="width:800px;margin:50px auto;">
  <form class="layui-form">
   <div class="layui-form-item">
    <label class="layui-form-label">选择地区</label>
    <div class="layui-input-inline">
     <select name="provid" id="provid" lay-filter="provid">
      <option value="">请选择省</option>
     </select>
    </div>
    <div class="layui-input-inline">
     <select name="cityid" id="cityid" lay-filter="cityid">
      <option value="">请选择市</option>
     </select>
    </div>
    <div class="layui-input-inline">
     <select name="areaid" id="areaid" lay-filter="areaid">
      <option value="">请选择县/区</option>
     </select>
    </div>
   </div>
  </form>
 </div>
</body>
</html>
province.js
var defaults = {
 s1: 'provid',
 s2: 'cityid',
 s3: 'areaid',
 v1: null,
 v2: null,
 v3: null
};
var $form;
var form;
var $;
layui.define(['jquery', 'form'], function () {
 $ = layui.jquery;
 form = layui.form;
 $form = $('form');
 treeSelect(defaults);
});
function treeSelect(config) {
 config.v1 = config.v1 ? config.v1 : 110000;
 config.v2 = config.v2 ? config.v2 : 110100;
 config.v3 = config.v3 ? config.v3 : 110101;
 $.each(threeSelectData, function (k, v) {
  appendOptionTo($form.find('select[name=' + config.s1 + ']'), k, v.val, config.v1);
 });
 form.render();
 cityEvent(config);
 areaEvent(config);
 form.on('select(' + config.s1 + ')', function (data) {
  cityEvent(data);
  form.on('select(' + config.s2 + ')', function (data) {
   areaEvent(data);
  });
 });

 function cityEvent(data) {
  $form.find('select[name=' + config.s2 + ']').html("");
  config.v1 = data.value ? data.value : config.v1;
  $.each(threeSelectData, function (k, v) {
   if (v.val == config.v1) {
    if (v.items) {
     $.each(v.items, function (kt, vt) {
      appendOptionTo($form.find('select[name=' + config.s2 + ']'), kt, vt.val, config.v2);
     });
    }
   }
  });
  form.render();
  config.v2 = $('select[name=' + config.s2 + ']').val();
  areaEvent(config);
 }
 function areaEvent(data) {
  $form.find('select[name=' + config.s3 + ']').html("");
  config.v2 = data.value ? data.value : config.v2;
  $.each(threeSelectData, function (k, v) {
   if (v.val == config.v1) {
    if (v.items) {
     $.each(v.items, function (kt, vt) {
      if (vt.val == config.v2) {
       $.each(vt.items, function (ka, va) {
        appendOptionTo($form.find('select[name=' + config.s3 + ']'), ka, va, config.v3);
       });
      }
     });
    }
   }
  });
  form.render();
  form.on('select(' + config.s3 + ')', function (data) { });
 }
 function appendOptionTo($o, k, v, d) {
  var $opt = $("<option>").text(k).val(v);
  if (v == d) { $opt.attr("selected", "selected") }
  $opt.appendTo($o);
 }
}
=======================================================================================
data数据
var threeSelectData={"北京":{val:"110000",items:{"北京":{val:"110100",items:{"东城区":"110101","西城区":"110102","崇文区":"110103","宣武区":"110104","朝阳区":"110105","丰台区":"110106","石景山区":"110107","海淀区":"110108","门头沟区":"110109","房山区":"110111","通州区":"110112","顺义区":"110113","昌平区":"110114","大兴区":"110115","怀柔区":"110116","平谷区":"110117","密云县":"110228","延庆县":"110229"}}}}

总结     

到此这篇关于layui使用及简单的三级联动实现的文章就介绍到这了,更多相关layui使用及三级联动内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Javascript 相关文章推荐
jQuery 判断页面元素是否存在的代码
Aug 14 Javascript
基于jquery的图片幻灯展示源码
Jul 15 Javascript
自己用jQuery写了一个图片的马赛克消失效果
May 04 Javascript
JavaScript实现邮箱地址自动匹配功能代码
Nov 28 Javascript
Jquery Easyui自定义下拉框组件使用详解(21)
Dec 31 Javascript
利用types增强vscode中js代码提示功能详解
Jul 07 Javascript
原生js获取left值和top值的三种方法
Aug 02 Javascript
解决vue-cli创建项目的loader问题
Mar 13 Javascript
react中Suspense的使用详解
Sep 01 Javascript
vue使用svg文件补充-svg放大缩小操作(使用d3.js)
Sep 22 Javascript
解决nuxt页面中mounted、created、watch执行两遍的问题
Nov 05 Javascript
js中Object.create实例用法详解
Oct 05 Javascript
vue开发chrome插件,实现获取界面数据和保存到数据库功能
Dec 01 #Vue.js
编写v-for循环的技巧汇总
Dec 01 #Javascript
jquery实现拖拽添加元素功能
Dec 01 #jQuery
创建与框架无关的JavaScript插件
Dec 01 #Javascript
jQuery实现可以扩展的日历
Dec 01 #jQuery
如何使用gpu.js改善JavaScript的性能
Dec 01 #Javascript
jQuery实现容器间的元素拖拽功能
Dec 01 #jQuery
You might like
PHP远程连接MYSQL数据库非常慢的解决方法
2008/07/05 PHP
php版银联支付接口开发简明教程
2016/10/14 PHP
PHP排序算法之希尔排序(Shell Sort)实例分析
2018/04/20 PHP
JavaScript 学习笔记(十四) 正则表达式
2010/01/22 Javascript
关于js日期转化为毫秒数“节省20%的效率和和节省9个字符“问题
2012/03/01 Javascript
裁剪字符串trim()自定义改进版
2013/04/10 Javascript
页面定时刷新(1秒刷新一次)
2013/11/22 Javascript
jquery将一个表单序列化为一个对象的方法
2014/01/03 Javascript
js判断某个方法是否存在实例代码
2015/01/10 Javascript
JavaScript通过元素索引号删除数组中对应元素的方法
2015/03/18 Javascript
jquery+html5时钟特效代码分享(可设置闹钟并且语音提醒)
2020/03/30 Javascript
JS实现具备延时功能的滑动门菜单效果
2015/09/17 Javascript
JavaScript中的各种操作符使用总结
2016/05/26 Javascript
Bootstrap modal 多弹窗之叠加引起的滚动条遮罩阴影问题
2017/02/27 Javascript
Webpack执行命令参数详解
2017/06/17 Javascript
js实现音乐播放控制条
2017/09/09 Javascript
使用InstantClick.js让页面提前加载200ms
2017/09/12 Javascript
详解在vue-cli中使用路由
2017/09/25 Javascript
js如何获取图片url的Blob值并预览示例代码
2019/03/07 Javascript
JavaScript表格隔行变色和Tab标签页特效示例【附jQuery版】
2019/07/11 jQuery
Vue移动端实现图片上传及超过1M压缩上传
2019/12/23 Javascript
[51:06]DOTA2-DPC中国联赛 正赛 Elephant vs Aster BO3 第二场 1月26日
2021/03/11 DOTA
python选择排序算法的实现代码
2013/11/21 Python
Python做文本按行去重的实现方法
2016/10/19 Python
python tensorflow学习之识别单张图片的实现的示例
2018/02/09 Python
python写入已存在的excel数据实例
2018/05/03 Python
pytorch实现从本地加载 .pth 格式模型
2020/02/14 Python
马来西亚领先的在线礼品店:Giftr
2018/08/23 全球购物
敬老院院长事迹材料
2014/05/21 职场文书
广告艺术设计专业自荐书
2014/07/08 职场文书
房屋买卖协议书范本
2014/09/27 职场文书
升职自荐信范文
2015/03/27 职场文书
搬迁通知
2015/04/20 职场文书
卫生院义诊活动总结
2015/05/07 职场文书
公文格式,规则明细(新手收藏)
2019/07/23 职场文书
详解MySQL中timestamp和datetime时区问题导致做DTS遇到的坑
2021/12/06 MySQL