layui之select的option叠加问题的解决方法


Posted in Javascript onMarch 08, 2018

小编我在使用layui,在select的地方遇到了坑,select里的值居然无法清空,select里的option还有叠加问题,为了解决这个问题,也达到我的功能,我研究了下,让有同样需求的小伙伴不踩坑,特贴上我的源码:

<!DOCTYPE html>
<html lang="en">
<head>
 <meta charset="UTF-8">
 <title>layui-下拉框联动测试</title>
 <link rel="stylesheet" href="layui/css/layui.css" rel="external nofollow" >
</head>
<body>
<div id="wrap">
 <div class="layui-form" lay-filter="merchantForm">
 <div class="layui-form-item">
 <label class="layui-form-label">选择框</label>
 <div class="layui-input-block">
  <select name="city" lay-verify="required" id="test1" lay-filter="test1">
  <option value="0">时间</option>
  <option value="1">金额</option>
  </select>
 </div>
 </div>
 <div class="layui-form-item">
 <label class="layui-form-label">选择框</label>
 <div class="layui-input-block">
  <select name="city" lay-verify="required" id="test2" lay-filter="test2">
  <option value="">请选择规则名称</option>
  </select>
 </div>
 </div>
</div> 
<button id="btn">确定</button>
</body>
<script src="layui/layui.all.js"></script>
<script src="layui/jquery-1.8.3.min.js"></script>
<script>
//后台传过来的数据
var data=[
 {unitType:0,ruleName:'时间规则11',amount:1100,money:1100},
 {unitType:0,ruleName:'时间规则12',amount:1200,money:1200},
 {unitType:0,ruleName:'时间规则13',amount:1300,money:1300},
 {unitType:1,ruleName:'金额规则21',amount:2100,money:2100},
 {unitType:1,ruleName:'金额规则22',amount:2200,money:2200},
 {unitType:1,ruleName:'金额规则23',amount:2300,money:2300},
];
//初始化默认为时间类型以及对应的时间规则
layui.use('form', function(){
 var form = layui.form;
  $('#test2').html('');
  var html='';
  $.each(data,function(i,e){
   if(e.unitType==0)
    html+=`<option data-type="${e.unitType}">${e.ruleName}</option>`;
  })
  $('#test2').append(html);
  form.render('select'); 
})
//动态二级联动
layui.use('form', function(){
 var form = layui.form;
  form.on('select(test1)', function(obj){
  $('#test2').html('');
  var html='';
  if(obj.value==0){
   $.each(data,function(i,e){
    if(e.unitType==obj.value)
     html+=`<option data-type="${e.unitType}">${e.ruleName}</option>`;
   })
   $('#test2').append(html);
  }else if(obj.value==1){
   $.each(data,function(i,e){
    if(e.unitType==obj.value)
    html+=`<option data-type="${e.unitType}">${e.ruleName}</option>`;
   })
   $('#test2').append(html);
  }
  form.render('select');
 });
})
//二级联动完毕后获取对应的规则数据
$('#btn').click(function(){
 var thisValue=data.find((v)=>v.ruleName==$('#test2').val());
 console.log(thisValue); 
})
</script>
</html>

以上这篇layui之select的option叠加问题的解决方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
如何实现iframe(嵌入式帧)的自适应高度
Jul 26 Javascript
Jquery截取中文字符串的实现代码
Dec 22 Javascript
使用jquery写个更改表格行顺序的小功能
Apr 29 Javascript
使用JavaScript刷新网页的方法
Jun 04 Javascript
分享网页检测摇一摇实例代码
Jan 14 Javascript
JavaScript表单验证开发
Nov 23 Javascript
原生js实现弹出层登录拖拽功能
Dec 05 Javascript
jQuery布局组件EasyUI Layout使用方法详解
Feb 28 Javascript
JS实现上传图片的三种方法并实现预览图片功能
Jul 14 Javascript
node使用promise替代回调函数
May 07 Javascript
JavaScript面向对象程序设计创建对象的方法分析
Aug 13 Javascript
vue监听滚动事件的方法
Dec 21 Vue.js
vue2.0 axios跨域并渲染的问题解决方法
Mar 08 #Javascript
解决Vue 通过下表修改数组,页面不渲染的问题
Mar 08 #Javascript
Vue.js实现图片的随意拖动方法
Mar 08 #Javascript
JS字符串去除连续或全部重复字符的实例
Mar 08 #Javascript
实战node静态文件服务器的示例代码
Mar 08 #Javascript
vue.js或js实现中文A-Z排序的方法
Mar 08 #Javascript
vue.js移动数组位置,同时更新视图的方法
Mar 08 #Javascript
You might like
如何提高MYSQL数据库的查询统计速度 select 索引应用
2007/04/11 PHP
PHP 截取字符串函数整理(支持gb2312和utf-8)
2010/02/16 PHP
PHP数据库连接mysql与mysqli对比分析
2016/01/04 PHP
WordPress开发中用于标题显示的相关函数使用解析
2016/01/07 PHP
详解配置 Apache 服务器支持 PHP 文件的解析
2017/02/15 PHP
PHP获取中国时间(上海时区时间)及美国时间的方法
2017/02/23 PHP
让whoops帮我们告别ThinkPHP6的异常页面
2020/03/02 PHP
Javascript insertAfter() 实现函数代码
2011/10/12 Javascript
js前台判断开始时间是否小于结束时间
2012/02/23 Javascript
window.addEventListener来解决让一个js事件执行多个函数
2012/12/26 Javascript
jQuery中ajax的load()方法用法实例
2014/12/26 Javascript
jQuery选择器源码解读(七):elementMatcher函数
2015/03/31 Javascript
JS实现兼容各浏览器解析XML文档数据的方法
2015/06/01 Javascript
基于jQuery实现的扇形定时器附源码下载
2015/10/20 Javascript
jQuery实现响应鼠标事件的图片透明效果【附demo源码下载】
2016/06/16 Javascript
jQuery基本筛选选择器实例代码
2017/02/06 Javascript
在 Angular 中实现搜索关键字高亮示例
2017/03/21 Javascript
js指定步长实现单方向匀速运动
2017/07/17 Javascript
详细分析单线程JS执行问题
2017/11/22 Javascript
微信小程序button组件使用详解
2018/01/31 Javascript
如何使node也支持从url加载一个module详解
2018/06/05 Javascript
完美解决python遍历删除字典里值为空的元素报错问题
2016/09/11 Python
使用python和Django完成博客数据库的迁移方法
2018/01/05 Python
python opencv3实现人脸识别(windows)
2018/05/25 Python
python中时间模块的基本使用教程
2019/05/14 Python
PyCharm 配置远程python解释器和在本地修改服务器代码
2019/07/23 Python
六种酷炫Python运行进度条效果的实现代码
2020/07/17 Python
Python压缩模块zipfile实现原理及用法解析
2020/08/14 Python
10 套华丽的CSS3 按钮小结
2012/10/03 HTML / CSS
CSS3 filter(滤镜)实现网页灰色或者黑色模式的代码
2020/11/30 HTML / CSS
Auguste The Label官网:澳大利亚一家精品女装时尚品牌
2020/06/14 全球购物
转党组织关系介绍信
2014/01/08 职场文书
入股协议书范本
2014/04/14 职场文书
2015年终个人政治思想工作总结
2015/11/24 职场文书
闭幕词的写作格式与范文!
2019/06/24 职场文书
《合作意向书》怎么写?
2019/08/20 职场文书