Layui 中 formSelects 的使用

一、formSelects使用文档

二、

1、下载:

下载地址:https://github.com/hnzzmsf/layui-formSelects

2、引入:

    //引入formSelects.css<link rel="stylesheet" href="formSelects-v4.css" />//模块化使用<script src="layui.js" type="text/javascript" charset="utf-8"></script><script type="text/javascript">//全局定义一次, 加载formSelectslayui.config({base: '../src/' //此处路径请自行处理, 可以使用绝对路径}).extend({formSelects: 'formSelects-v4'});//加载模块layui.use(['jquery', 'formSelects'], function(){var formSelects = layui.formSelects;});</script>

3、前台代码:

    <label class="layui-form-label">文章标签</label><div class="layui-input-inline" style="width: 56%;"><select name="tags" id="tags" lay-verify="required" xm-select="tags" xm-select-skin="normal"><option value="">请选择</option></select></div>

初始效果:

4、本地搜索:

    <label class="layui-form-label">文章标签</label><div class="layui-input-inline" style="width: 56%;"><select name="tags" id="tags" lay-verify="required" xm-select="tags" xm-select-skin="normal"><option value="">请选择</option><option value="1">随笔</option><option value="2">测试</option><option value="3">博客日志</option></select></div>

页面结果:

5、基础方法:

5.1 config 方法

    /*** 1.配置远程搜索, 请求头, 请求参数, 请求类型等** formSelects.config(ID, Options, isJson);** @param ID        xm-select的值* @param Options   配置项* @param isJson    是否传输json数据, true将添加请求头 Content-Type: application/json; charset=UTF-8*/var formSelects = layui.formSelects;formSelects.config('tags', {type: 'get',                //请求方式: post, get, put, delete...header: {},                 //自定义请求头data: {},                   //自定义除搜索内容外的其他数据searchUrl: '',              //搜索地址, 默认使用xm-select-search的值, 此参数优先级高searchName: 'keyword',      //自定义搜索内容的key值searchVal: '',              //自定义搜索内容, 搜素一次后失效, 优先级高于搜索框中的值keyName: 'name',            //自定义返回数据中name的key, 默认 namekeyVal: 'value',            //自定义返回数据中value的key, 默认 valuekeySel: 'selected',         //自定义返回数据中selected的key, 默认 selectedkeyDis: 'disabled',         //自定义返回数据中disabled的key, 默认 disabledkeyChildren: 'children',    //联动多选自定义childrendelay: 500,                 //搜索延迟时间, 默认停止输入500ms后开始搜索direction: 'auto',          //多选下拉方向, auto|up|downresponse: {statusCode: 0,          //成功状态码statusName: 'code',     //code keymsgName: 'msg',         //msg keydataName: 'data'        //data key},success: function(id, url, searchVal, result){      //使用远程方式的success回调console.log(id);        //组件ID xm-selectconsole.log(url);       //URLconsole.log(searchVal); //搜索的valueconsole.log(result);    //返回的结果},error: function(id, url, searchVal, err){           //使用远程方式的error回调//同上console.log(err);   //err对象},beforeSuccess: function(id, url, searchVal, result){        //success之前的回调, 干嘛呢? 处理数据的, 如果后台不想修改数据, 你也不想修改源码, 那就用这种方式处理下数据结构吧console.log(id);        //组件ID xm-selectconsole.log(url);       //URLconsole.log(searchVal); //搜索的valueconsole.log(result);    //返回的结果return result;  //必须return一个结果, 这个结果要符合对应的数据结构},beforeSearch: function(id, url, searchVal){         //搜索前调用此方法, return true将触发搜索, 否则不触发if(!searchVal){//如果搜索内容为空,就不触发搜索return false;}return true;},clearInput: false,          //当有搜索内容时, 点击选项是否清空搜索内容, 默认不清空}, true);

5.2 data 方法

   /*** 1.多选数据赋值** formSelects.data(ID, type, config);** @param ID            xm-select的值* @param type          'local' | 'server', 本地数据或者远程数据* @param config        配置项*          arr             本地数据数组*          url             远程数据链接*          keyword         远程数据搜索内容, 其他附加数据可以使用 formSelects.config设置*          linkage         是否为联动多选*          linkageWidth    联动多选没级宽度*///以下代码可以在console中运行测试, 结果查看基础示例第一个var formSelects = layui.formSelects;//local模式formSelects.data('select1', 'local', {arr: [{"name": "分组-1", "type": "optgroup"},{"name": "北京", "value": 1},{"name": "上海", "value": 2},{"name": "分组-2", "type": "optgroup"},{"name": "广州", "value": 3},{"name": "深圳", "value": 4},{"name": "天津", "value": 5}]});//server模式formSelects.data('select1', 'server', {url: 'https://www.fastmock.site/mock/29487363107ab7d242c46305cadf4c52/formSelects/layui/data',keyword: '水果'});//server返回数据与远程搜索数据结构一致{"code":0,"msg":"success","data":[{"name":"北京","value":1,"selected":"","disabled":""},{"name":"上海","value":2,"selected":"","disabled":""},{"name":"广州","value":3,"selected":"selected","disabled":""},{"name":"深圳","value":4,"selected":"","disabled":"disabled"},{"name":"天津","value":5,"selected":"","disabled":""}]}//当然你也可以偷懒, 返回如下结构[{"name":"北京","value":1,"selected":"","disabled":""},{"name":"上海","value":2,"selected":"","disabled":""},{"name":"广州","value":3,"selected":"selected","disabled":""},{"name":"深圳","value":4,"selected":"","disabled":"disabled"},{"name":"天津","value":5,"selected":"","disabled":""}]

6、远程搜索:

6.1 local 模式

    //加载模块layui.use(['jquery', 'formSelects'], function(){var formSelects = layui.formSelects;//local模式formSelects.data('tags', 'local', {arr: [{"name": "随笔", "value": 1},{"name": "测试", "value": 2},{"name": "博客日志", "value": 3}]});});   

页面结果:

6.2 server 模式

    //加载模块layui.use(['jquery', 'formSelects'], function(){var formSelects = layui.formSelects;//server模式formSelects.config('tags', {keyName: 'name',keyVal: 'id'}).data('tags', 'server', {url: "/tag/findAll.do"});});   

从服务器中返回的数据如下:

[SysTag{id=1, name='随笔', count=null}, SysTag{id=2, name='测试', count=null}, SysTag{id=3, name='博客日志', count=null}
]

页面结果:

7、其实在官网文档里这些东西都讲的很清楚,大家可以去看看。

官方文档:https://hnzzmsf.github.io/example/example_v4.html#methods-data

Layui 中 formSelects 的使用相关推荐

  1. layui 自定义排序_浅谈layui中table的sort排序

    table模块是layui框架最核心的组成之一,它用于对表格进行一些列功能和动态化数据操作,本文介绍了layui中table的sort排序,解决了在我们使用sort排序时可能遇到的一些问题. 今天来谈 ...

  2. data layui table 排序_浅谈layui中table的sort排序

    table模块是layui框架最核心的组成之一,它用于对表格进行一些列功能和动态化数据操作,本文介绍了layui中table的sort排序,解决了在我们使用sort排序时可能遇到的一些问题. 今天来谈 ...

  3. 在layui中使用 jquery 触发select 的 change事件无效

    在layui中使用 jquery 触发select 的 change事件无效 使用layui.use监听select事件 <select lay-filter="demo" ...

  4. html中的异步请求数据格式,解决layui中table异步数据请求不支持自定义返回数据格式的问题...

    使用版本 layui-v2.3.0 修改: 打开layui中table.js源码 在 Class.prototype.pullData 这个方法定义内部 //获得数据 Class.prototype. ...

  5. layui表头样式_js相关:layui中table表头样式修改方法

    js相关:layui中table表头样式修改方法 发布于 2020-7-25| 复制链接 分享一篇关于layui中table表头样式修改方法,具有很好的参考价值,希望对大家有所帮助.一起跟随小妖过来看 ...

  6. html表格td点击事件,监听layui中的table中的td点击事件

    上图 就是用layui生成的一个table表格; 在这里我们给td绑定class,再通过jq的方式去监听是不可行的; 会监听不到事件; 不过在layui中,给了监听方法,并且还可以获取到该行所有的数据 ...

  7. 快速了解layui中layer的使用

    这两天写项目的时候用到layer,于是又把layui找出来看了看,layui确实是一个比较强大的前端框架,里面涵盖了很多的前端元素,而这对于前端的开发者来说是省了很大的麻烦,从一些页面元素到内置模块, ...

  8. layui中去掉表格的hover变色

    layui中移除表格的hover变色 将样式设置为透明色即可解决 .layui-table tbody tr:hover, .layui-table tr, .layui-table-click, . ...

  9. layui中导航元素的简单使用

    整体效果图 所需界面 main.html界面代码 <!DOCTYPE html> <html lang="en"> <head><meta ...

  10. layui中select及submit提交

    layui中,select组件需要注意的几个地方: select外需要嵌套form标签: 给select添加lay-filter="test": 要在layui.use函数内声明使 ...

最新文章

  1. qt与mysql的增删改查_Qt数据库与QTableWidget结合的增删改查
  2. php中储存数据类型,PHP中的数据类型
  3. maven no Maven Dependencies view
  4. c++ 11 list转set
  5. 列表推导式、字典推导式、集合推导式
  6. HTML笔记一,部分常用的元素与属性
  7. Queue 输出数据
  8. Zabbix监控系统深度实践
  9. iPi Soft: Motion Capture for the Masses(大众化的运动捕捉软件)
  10. 暗影精灵5触摸板双指手势失效问题
  11. 宽搜入门代码模板详解 HDOJ1253
  12. 以漫画的形式描述联邦学习
  13. 漫画 | 芯片战争50年,Intel为什么干不掉AMD?
  14. 仿真通过AXI_lite接口读写寄存器时axi_awready信号无法拉高的一种原因
  15. python 标准输入设备,实时获取MIDI设备的输入(Python)
  16. 非诚勿扰24灯全灭php,收二手货小伙上非诚勿扰,24盏灯全灭还遭羞辱,最后才知道是收二手豪车身价上亿...
  17. 交互设计师必须知道的五大交互设计流程
  18. 瓜子二手车 翻页 csv
  19. 我对 大内核锁BKL 的理解
  20. oracle 280000,续-实例恢复- ORACLE instance shut down

热门文章

  1. 积温空间分布数据、气温分布数据、日照数据、降雨量分布、太阳辐射数据、地表径流数据、土地利用数据、npp数据、ndvi数据
  2. 关于c++的return
  3. Faiss从入门到实战精通
  4. 数据结构 详解(C++)
  5. 离散数学--命题逻辑(一)
  6. mysql关于用户的知识_关于mysql的基础知识
  7. python fsolve说明_python fsolve说明_Python fsolve()抱怨形状.为什么?
  8. 原根算法C语言,数据结构与算法分析 C语言描述(第2版)Larry Nyhoff AVL树
  9. 智能判断图片中是否存在某物体_RFID新技术:让所有物体联网!
  10. v3是c语言吗 yolo_你真的明白yolo v3吗?