xm-select介绍

始于Layui, 下拉选择框的多选解决方案

git地址:https://gitee.com/maplemei/xm-select

文档说明:https://codecp.tech/static/xm-select/#/component/options

什么情况下使用

  • 下拉框的数据量比较大
  • 需要支持下拉框的搜索

如何使用自定义搜索

  • 引用xm-select,使用最新版本,老版本update方法无法使用

    <script type="text/javascript" th:src="@{/res/js/xm-select-1.2.2.js}"></script>
  • 定义下拉框的位置

    <div id="demo1"></div>
  • 调用reader进行渲染
let list = [];
let pageSize = 10;
if(demoSelect == null){
orgNameSelect = xmSelect.render({
el: '#demoSelect',
data: [], // 数据
paging: true, // 是否分页
pageSize: pageSize, // 每页数量
max:10, // 最多可以选的个数
// 触发监听
on: function(data){
// 监听到的数据类型包含 name,value
let arr = data.arr;
let checkIdArr = [];
let checkNameArr = [];
if(arr.length > 0){
arr.forEach((item) => {
checkIdArr.push(item.value);
checkNameArr.push(item.name);
});
$("#id").val(checkIdArr.join(","));
$("#name").val(checkNameArr.join(","));
}else{
$("#id").val("");
$("#name").val("");
}
},
// 样式
theme: {
color: '#4991E1',
},
// radio: true,// 单选
// clickClose: true,// 选中后关闭
pageRemote: true,// 是否开启远程分页
pageEmptyShow: false,// 显示空页
remoteSearch: true,// 远程搜索
// 远程搜索方法
// val: 当前搜索值, cb(arr, totalPage): 回调函数, 需要回调一个数组, 结构同data, 远程分页需要第二个参数: 总页码
// show: 下拉框显示状态, pageIndex: 分页下当前页码
remoteMethod: function(val, cb, show, pageIndex){
// 调用后台接口
$.ajax({
url: "/getList?param=111,
type: "GET",
dataType: "JSON",
success: function(resp) {
if (resp.code === SUCCESS_CODE) {
if(resp.data.total > 0){
let data = resp.data.list;
list = [];
for(let i=0; i<data.length; i++){
list.push({"name":data[i].orgName,"value":data[i].orgId});
}
// 页码
let pages = Math.ceil(resp.data.total / pageSize);
cb(list,pages);
}else{
// 初始化为空
cb([],0);
}
}
}
});
},
// 开启搜索
filterable: true,
});
}else{
console.log("更新");
// reset 会把已选中的数据清除 update方法只是更新,他们都可以重新触发一次remoteMethod
orgNameSelect.reset();
}

显示效果

layui下拉框xm-select自定义搜索使用方法的更多相关文章

  1. layui下拉框数据过万渲染渲染问题解决方案

    方案一:layui下拉框分页插件 https://fly.layui.com/jie/29002/ 此插件我用了下浏览器缓存有问题,而且当下拉框数据量过万后,会一直渲染不出来,期待后期作者优化 如图下 ...

  2. Asp.net绑定带层次下拉框(select控件)

    1.效果图 2.数据库中表数据结构 3.前台页面 <select id="pid" runat="server" style="width:16 ...

  3. 下拉框click事件与搜索框blur事件的爱恨纠葛

    还原车祸现场 功能类似于百度搜索,搜索框输入内容,下拉框显示候选项,点击候选项就选择候选项,然后下拉框隐藏,点击外面就直接隐藏下拉框,于是我写了以下代码 //参会单位联想 $('input[name= ...

  4. pentaho cde 自定义复选下拉框 checkbox select

    pentaho  自带的component 虽多,但是当用户需要在一个表格中查看多个组别的数据时,pentaho自带的单选框就不能实现了,所以复选下拉框势在必行,实现效果如下: 实现原理是借用了jqu ...

  5. 多选下拉框(select 下拉多选)

    方法一:使用multiple-select.js和multiple-select .css实现 HTML代码: <select id='checkedLevel' style="wid ...

  6. layui下拉框后台动态赋值

    前台页面: <select name="xm" id="xm" lay-verify="required" lay-filter=&q ...

  7. Layui下拉框改变时触发事件

    layui.use(['form', 'layer'], function () { var form = layui.form(); var layer = layui.layer; form.on ...

  8. layui下拉框不显示的问题

    1.先检查有没有引入layui.js 2.然后看有没有被<form class="layui-form"></form>包住, 3.查看是否有以下代码 &l ...

  9. 【Layui】当Layui数据表格和Layui下拉框组合时发生的问题

    关于Layui数据表格用下拉框显示问题 如图所示 可以看见当点击下拉框时下拉选项被下拉框覆盖 此时你需要在数据表格渲染完成时的回调内添加如下代码即可 $(".sel_scrq"). ...

  10. layui下拉框实现级联

    <!DOCTYPE html><html><head> <meta charset="utf-8" /> <link href ...

随机推荐

  1. vue前端自适应布局,一步到位所有自适应

    vue前端自适应布局,一步到位所有自适应 页面展示 实现内容 1,左右布局 左侧固定宽带,右侧自适应剩余的宽度. 中间一条分割线,可以拖拉,自适应调整左右侧的宽度. 左侧的高度超长自动出现横向滚动条, ...

  2. quartz集成spring集群部署

    由于quartz单节点无法满足业务的需求,后面我们在单节点的基础上进行了集群部署. 由以前的定时任务信息放在jobs.xml配置文件中,转而放到数据库中. 1.新建数据库表 CREATE TABLE ...

  3. 一文讲透CRC校验码-附赠C语言实例

    一口君最近工作用到CRC校验,顺便整理本篇文章和大家一起研究. 一.CRC概念 1. 什么是CRC? CRC(Cyclic Redundancy Checksum)是一种纠错技术,代表循环冗余校验和. ...

  4. 国产化适配——银河麒麟V10(1)

    前言 为响应国家"信创"建设,公司最近在搞国产化适配,我刚好负责这搞一部分,做个记录吧. 主要包括三块:国产服务器操作系统银河麒麟V10,国产数据库人大金仓kingbase,中间件 ...

  5. 无分号js风格注意的三个问题

    建议如果一行代码是以   (   [   `  开头的,则最好都在其前面补上一个分号. // 1.( function say() { console.log('hello world') } // ...

  6. Linux 常见编辑器

    命令行编辑器 Vim Linux 上最出名的编辑器当属 Vim 了.Vim 由 Vi 发展而来,Vim 的名字意指 Vi IMproved,表示 Vi 的升级版.Vim 对于新手来说使用比较复杂,不过 ...

  7. 【转】ElasticSearch报错FORBIDDEN/12/index read-only / allow delete (api) ,read_only_allow_delete 设置 windows

    仅供自己记录使用,原文链接:ElasticSearch报错FORBIDDEN/12/index read-only / allow delete (api)_sinat_22387459的博客-CSD ...

  8. airflow 学习

    入门 Get started developing workflows with Apache Airflow Getting started with Apache Airflow  

  9. Serilog文档翻译系列(三) - 基础配置

    Serilog 使用简单的 C# API 来配置日志记录.当需要外部配置时,可以(慎用)通过使用 Serilog.Settings.AppSettings 包或 Serilog.Settings.Co ...

  10. 如何在 Web 前端做 3D 音效处理

    ​ 一.背景 在社交元宇宙.大逃杀等类型的游戏场景下,用户在通过简单语音交流外,结合场景也需要一些立体声效果来让用户感知游戏角色周围其他用户的存在及其对应的距离和方位,提高语音互动的趣味性. 为了满足 ...