当前位置: 首页 > news >正文

layui.formSelects自定义多选组件在layer.open中使用、获取、复现

layui.formSelects自定义多选组件在layer.open中使用、获取、复现

引入css和js

//<th:block th:include="include :: layui-formSelects-css"/>
<link th:href="@{/ajax/libs/layui-formSelects/formSelects-v4.css}" rel="stylesheet"/>
//<th:block th:include="include :: jsPinyin-js"/>//开启拼音模糊搜索
<script th:src="@{/ajax/libs/tlink/lay/modules/js-pinyin.js}"></script>

html:

<!--弹窗-->
注意:layui.open中的弹窗中的内容单独写在页面里,不要在js里面直接渲染,可能导致多选组件失效。
<form class="layui-form add-form" id="list-form" lay-filter="list-form" style="display: none;margin:20px"><div class="layui-form-item"><label class="layui-form-label">用户</label><div class="layui-input-block new-input-block"><select id="controlList" name="controlList"  lay-filter="controlList" xm-select="controlList" xm-select-search="" xm-select-search-type="dl"xm-select-skin="normal"><option value="">请选择</option><option value="1">11</option><option value="2">22</option></select></div></div>
</form>

js:

layui.extend(
{formSelects : '/ajax/libs/layui-formSelects/formSelects-v4',})
layui.use(['laypage', 'layer', 'tree', 'form', 'layarea', 'formSelects'], function () {var laypage = layui.laypage, layer = layui.layer, tree = layui.treeform = layui.formvar laydate = layui.laydate;//日期时间模块var laypage = layui.laypage;//分页模块var laytpl = layui.laytpl;var layarea = layui.layarea;var formSelects = layui.formSelects;//载入自定义多选组件// 用于复现之前选中的值formSelects.value('controlList', ['1','2'], true); // true表示是否渲染到DOM上,默认为true// formSelects.render('controlList'); // 初始化名为controlList的选择器(不要也可)$(document).on("click",".lists",function (){layer.open({type: 1,title: '用户设置',shade: 0.1,area: ['635px', '500px'],btn: ['确定', '取消'],content:$('#list-form'), success: function (layero, index) {//formSelects.render('controlList'); // 确保在弹窗中重新渲染选择器(不要也可)}, btn1: function (index) {//确定// form.render()var value1 = formSelects.value('controlList');  // [{"name":"11","val":"1"},{"name":"22","val":"2"}]var value2 = formSelects.value('controlList', 'value'); // [{"name":"11","val":"1"},{"name":"22","val":"2"}]var value3 = formSelects.value('controlList','all'); // [{"name":"11","val":"1"},{"name":"22","val":"2"}]var value4 = formSelects.value('controlList','val'); // ["1","2"]var value5 = formSelects.value('controlList','valStr'); // 1,2 字符串var value6 = formSelects.value('controlList','name'); // ["11","22"]console.log(value1,'参数:无');console.log(value2,'参数:value');console.log(value3,'参数:all');console.log(value4,'参数:val');console.log(value5,'参数:valStr');console.log(value6,'参数:name');}, btn2: function () {//取消}})})//开启拼音模糊搜索formSelects.filter(null, function(id, inputVal, val, isDisabled){if(PY.fullPY(val.name).toLowerCase().indexOf(inputVal) != -1 ||    //拼音全拼是否包含PY.fullPY(val.name, true).indexOf(inputVal) != -1 ||            //拼音简拼是否包含val.name.indexOf(inputVal) != -1                                //文本是否包含){return false;}return true;});})

效果:
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

http://www.dtcms.com/a/344299.html

相关文章:

  • 2025年十大工程项目管理软件
  • 如何使用AI大语言模型解决生活中的实际小事情?
  • 【机器学习深度学习】LMDeploy的分布式推理实现
  • Laravel分布式全链路追踪实战
  • OpenCV 图像边缘检测
  • 设计模式之装饰模式
  • 技术革新:再互动平台如何以全链路数字化重构防伪溯源生态
  • 泵站远程监控与自动化控制系统:智慧泵房设备的创新实践
  • RLHF的定义
  • 无人机延时模块技术难点解析
  • 数字安全隐形基石:随机数、熵源与DRBG核心解析与技术关联
  • Kubernetes 构建高可用、高性能 Redis 集群
  • 服务器硬件中的磁盘SSD与HDD性能区别,以及分别适用于什么业务?
  • 高性能、高实时、高安全:如何在飞凌嵌入式i.MX95xx核心板上同时实现?
  • C++ 循环:从入门到精通的深度解析
  • KubeBlocks for MSSQL 高可用实现
  • 云原生(Cloud Native)技术概述
  • 企业级大模型解决方案:架构、落地与代码实现​
  • LeetCode 分类刷题:34. 在排序数组中查找元素的第一个和最后一个位置
  • Unreal Engine APawn 与 ACharacter 比较
  • 开发避坑指南(31):Oracle 11g LISTAGG函数使用陷阱,缺失WITHIN子句解决方案
  • 如何优雅统计知识库文件个数与子集下不同文件夹文件个数
  • Vue3源码reactivity响应式篇之Ref
  • Oracle APEX 经典报表中的Checkbox
  • 期货Level2五档订单簿0.25秒级高频分时及日频历史行情数据使用指南
  • Docker 部署 MySQL 8.0 完整指南:从拉取镜像到配置远程访问
  • 高级SQL优化 | 告别 Hive 中 GROUP BY 的大 KEY 数据倾斜!PawSQL 自适应优化算法详解
  • MsSQL 函数,实现数字转换成人民币大写
  • IDEA基础配置优化指南(中英双版)
  • matlab中随机森林算法的实现