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 相关文章推荐
extjs grid取到数据而不显示的解决
Dec 29 Javascript
php图像生成函数之间的区别分析
Dec 06 Javascript
基于JavaScript实现继承机制之调用call()与apply()的方法详解
May 07 Javascript
JS定时刷新页面及跳转页面的方法
Jul 04 Javascript
浅谈下拉菜单中的Option对象
May 10 Javascript
浅谈jquery.fn.extend与jquery.extend区别
Jul 13 Javascript
jQuery实现Meizu魅族官方网站的导航菜单效果
Sep 14 Javascript
JavaScript截取、切割字符串的技巧
Jan 07 Javascript
Javascript将字符串日期格式化为yyyy-mm-dd的方法
Oct 27 Javascript
jQuery的$.extend 浅拷贝与深拷贝
Mar 08 Javascript
vue-router实现tab标签页(单页面)详解
Oct 17 Javascript
Angular动态绑定样式及改变UI框架样式的方法小结
Sep 03 Javascript
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
约瑟夫环问题的PHP实现 使用PHP数组内部指针操作函数
2010/10/12 PHP
php中file_get_contents与curl性能比较分析
2014/11/08 PHP
html的DOM中Event对象onabort事件用法实例
2015/01/21 Javascript
jquery超简单实现手风琴效果的方法
2015/06/05 Javascript
angularjs学习笔记之完整的项目结构
2015/09/26 Javascript
ArtEditor富文本编辑器增加表单提交功能
2016/04/18 Javascript
基于Bootstrap实现图片轮播效果
2016/05/22 Javascript
详解ES6中的let命令
2020/04/05 Javascript
Zepto实现密码的隐藏/显示
2017/04/07 Javascript
Vue infinite update loop的问题解决
2019/04/23 Javascript
vue 开发之路由配置方法详解
2019/12/02 Javascript
在Echarts图中给坐标轴加一个标识线markLine
2020/07/20 Javascript
Django中处理出错页面的方法
2015/07/15 Python
Python爬虫实现“盗取”微信好友信息的方法分析
2019/09/16 Python
Python使用xlrd实现读取合并单元格
2020/07/09 Python
Python Tkinter实例——模拟掷骰子
2020/10/24 Python
python 实现端口扫描工具
2020/12/18 Python
阻止移动设备(手机、pad)浏览器双击放大网页的方法
2014/06/03 HTML / CSS
美国户外生活方式品牌:Eddie Bauer
2016/12/28 全球购物
手工制作的豪华英式沙发和沙发床:Willow & Hall
2019/05/03 全球购物
加拿大的标志性百货公司:Hudson’s Bay(哈得逊湾)
2019/09/03 全球购物
《小小雨点》教学反思
2014/02/18 职场文书
房地产端午节活动方案
2014/08/24 职场文书
党员自我评议个人对照检查材料
2014/09/16 职场文书
2014年自愿离婚协议书
2014/10/10 职场文书
2014年安全保卫工作总结
2014/11/13 职场文书
2014年计生协会工作总结
2014/11/21 职场文书
律师催款函范文
2015/06/24 职场文书
护士医德医风心得体会
2016/01/25 职场文书
写好求职信的技巧解密
2019/05/14 职场文书
婚前协议书怎么写,才具有法律效力呢 ?
2019/06/28 职场文书
喜迎建国70周年:有关爱国的名言名句
2019/09/24 职场文书
导游词之苏州盘门景区
2019/11/12 职场文书
Java字符串逆序方法详情
2022/03/21 Java/Android
Redis如何实现验证码发送 以及限制每日发送次数
2022/04/18 Redis
HTML页面中使两个div并排显示的实现
2022/05/15 HTML / CSS