xm-select的简单使用

基于客户需求 需要一个select 多选 下拉框。
前台框架使用layUI 于是进行查找—》formSelects 4.x 这是layUI的一个第三方插件 但是看了一下发现已经停止维护了!!!
在这里插入图片描述
后来使用 xm-select
官网:https://maplemei.gitee.io/xm-select/#/component/install
这个使用就非常简单了只需要引入lyaui和自身的js就可以了

xm-select.js:https://gitee.com/maplemei/xm-select/releases
找到最新版本下载zip 解压,再放入项目中即可,下来就是正式的应用了。

引入js

<script type="text/javascript" src="<%=basePath%>CustomerserviceJs/jquery-1.10.2.min.js"></script>
<script src="<%=basePath%>lib/layui/layui.js" charset="utf-8"></script>
<script src="<%=basePath%>lib/layui/xm-select.js" charset="utf-8"></script>

页面中放入占位标签

<div id="demo1" class="xm-select-demo" ></div>

js初始化

<script type="text/javascript">
	    var data = ${data}; //后台实体类转json后的数据
	    var val = [];
	    var oldVal = "${notic.range}"; //已选中的值
	    for(var i = 0; i < data.length; i++){ //循环所有选项
	    	if(oldVal.indexOf(data[i].rescode) != -1){ //判断是否需要默认选中
	    		var con = {name:data[i].resname, value:data[i].rescode,  selected: true, disabled: true};
	    	} else {
	    		if(oldVal){ // 判断是否需要加disable属性
	    			var con = {name:data[i].resname, value:data[i].rescode, disabled: true};	
	    		} else { // 正常
	    			var con = {name:data[i].resname, value:data[i].rescode};
	    		}
	    	}
	    	val.push(con);
	    }
	    var demo1= xmSelect.render({
	    	el: '#demo1'
	       ,data: val
	    })
</script>

官方示例:
在这里插入图片描述

上面的这些代码都是基于业务需要,
点击查看时:将之前已选中的数据选中然后加上disable 防止操作。可进行修改。

下来再说一下如何获取选中的值

var val = xmSelect.get('#demo1', true).getValue('valueStr');  //  获取选中的Id并用 "," 拼接。
var val = xmSelect.get('#demo1', true).getValue('nameStr');  //  获取选中的name并用 "," 拼接。

然后再将值传入后台。 具体操作可以看官方文档。
在这里插入图片描述
OK 到这来问题就解决了!!!

  • 4
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
要实现下拉列表的多选功能,并使用 xm-select 插件进行操作,可以按照以下步骤进行: 1. 引入必要的依赖文件。在 HTML 页面中引入 jQuery 和 xm-select 的 CSS 和 JavaScript 文件。 ```html <script src="https://cdn.bootcdn.net/ajax/libs/jquery/3.5.1/jquery.min.js"></script> <link rel="stylesheet" href="https://cdn.bootcdn.net/ajax/libs/xm-select/2.4.1/xm-select.css"> <script src="https://cdn.bootcdn.net/ajax/libs/xm-select/2.4.1/xm-select.js"></script> ``` 2. 创建一个 `<select>` 元素,并为其添加一个唯一的 id。 ```html <select id="mySelect" multiple> <!-- 动态生成的选项将在这里插入 --> </select> ``` 3. 使用 JavaScript 动态生成选项,并初始化 xm-select 插件。 ```javascript // 获取需要插入选项的 select 元素 var selectElement = document.getElementById("mySelect"); // 定义动态生成的选项数据 var options = [ { name: "选项1", value: "option1" }, { name: "选项2", value: "option2" }, { name: "选项3", value: "option3" }, // 其他选项... ]; // 动态生成选项 options.forEach(function (option) { var optionElement = document.createElement("option"); optionElement.text = option.name; optionElement.value = option.value; selectElement.appendChild(optionElement); }); // 初始化 xm-select 插件 xmSelect.render({ el: '#mySelect', tips: '请选择选项', }); ``` 通过以上步骤,就可以实现使用 xm-select 插件实现下拉列表的动态数据多选功能。请注意,上述代码只是一个简单的示例,你可以根据自己的实际需求进行相应的修改和扩展。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值