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 相关文章推荐
Javascript 阻止javascript事件冒泡,获取控件ID值
Jun 27 Javascript
javascript window.opener的用法分析
Apr 07 Javascript
js鼠标左右键 键盘值小结
Jun 11 Javascript
深入了解JavaScript中的Symbol的使用方法
Jul 28 Javascript
详解jQuery停止动画——stop()方法的使用
Dec 14 Javascript
canvas实现流星雨的背景效果
Jan 13 Javascript
JavaScript表单验证实现代码
May 22 Javascript
Javascript实现跨域后台设置拦截的方法详解
Aug 04 Javascript
图片懒加载imgLazyLoading.js使用详解
Sep 15 Javascript
React.js组件实现拖拽排序组件功能过程解析
Apr 27 Javascript
vue输入框使用模糊搜索功能的实现代码
May 26 Javascript
js实现双人五子棋小游戏
May 28 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用header函数实现301跳转代码实例
2013/11/25 PHP
PHP的error_reporting错误级别变量对照表
2014/07/08 PHP
php与c 实现按行读取文件实例代码
2017/01/03 PHP
AngularJS iframe跨域打开内容时报错误的解决办法
2015/01/26 Javascript
Javascript核心读书有感之类型、值和变量
2015/02/11 Javascript
Jquery数字上下滚动动态切换插件
2015/08/08 Javascript
javascript中tostring()和valueof()的用法及两者的区别
2015/11/16 Javascript
bootstrap和jQuery.Gantt的css冲突 如何解决
2016/05/29 Javascript
jquery树形菜单效果的简单实例
2016/06/06 Javascript
VUEJS实战之构建基础并渲染出列表(1)
2016/06/13 Javascript
javascript日期比较方法实例分析
2016/06/17 Javascript
VueJs路由跳转——vue-router的使用详解
2017/01/10 Javascript
node.js-v6新版安装具体步骤(分享)
2017/09/06 Javascript
详解JavaScript的数据类型以及数据类型的转换
2019/04/20 Javascript
基于form-data请求格式详解
2019/10/29 Javascript
Python类属性的延迟计算
2016/10/22 Python
用 Python 爬了爬自己的微信朋友(实例讲解)
2017/08/25 Python
Python浅复制中对象生存周期实例分析
2018/04/02 Python
python验证身份证信息实例代码
2019/05/06 Python
Python 监测文件是否更新的方法
2019/06/10 Python
将python安装信息加入注册表的示例
2019/11/20 Python
使用python 的matplotlib 画轨道实例
2020/01/19 Python
Jupyter notebook运行Spark+Scala教程
2020/04/10 Python
python2和python3哪个使用率高
2020/06/23 Python
拿来就用!Python批量合并PDF的示例代码
2020/08/10 Python
加拿大快时尚零售商:Ardene
2018/02/14 全球购物
Sephora丝芙兰马来西亚官方网站:国际化妆品购物
2018/03/15 全球购物
春季防火方案
2014/05/10 职场文书
关于奉献的演讲稿
2014/05/21 职场文书
公关活动策划方案
2014/05/25 职场文书
行风评议整改报告
2014/11/06 职场文书
2015年读书月活动总结
2015/03/26 职场文书
2015年暑期实践报告范文
2015/07/13 职场文书
2015大学党建带团建工作总结
2015/07/23 职场文书
2016保送生自荐信范文
2016/01/29 职场文书
学会掌握自己命运的十条黄金法则:
2019/08/08 职场文书