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 相关文章推荐
YUI的Tab切换实现代码
Apr 11 Javascript
JS控制弹出新页面窗口位置和大小的方法
Mar 02 Javascript
Jquery使用小技巧汇总
Dec 29 Javascript
使用postMesssage()实现跨域iframe页面间的信息传递方法
Mar 29 Javascript
详解js中常规日期格式处理、月历渲染和倒计时函数
Dec 28 Javascript
利用Js+Css实现折纸动态导航效果实例源码
Jan 25 Javascript
利用node.js搭建简单web服务器的方法教程
Feb 20 Javascript
vue2.0嵌套路由实现豆瓣电影分页功能(附demo)
Mar 13 Javascript
jQuery EasyUI tree增加搜索功能的实现方法
Apr 27 jQuery
js实现简单分页导航栏效果
Jun 28 Javascript
Node.js从字符串生成文件流的实现方法
Aug 18 Javascript
JS实现的定时器展示简单秒表、页面弹框及跳转操作完整示例
Jan 26 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动态页生成静态页的3种常用方法
2014/11/13 PHP
php从字符串创建函数的方法
2015/03/16 PHP
php计算整个mysql数据库大小的方法
2015/06/19 PHP
php处理复杂xml数据示例
2016/07/11 PHP
PHP内存溢出优化代码详解
2021/02/26 PHP
js跟随滚动条滚动浮动代码
2009/12/31 Javascript
理解Javascript_01_理解内存分配原理分析
2010/10/11 Javascript
javascript使用for循环批量注册的事件不能正确获取索引值的解决方法
2014/12/20 Javascript
jquery文档操作wrap()方法实例简述
2015/01/10 Javascript
javascript作用域问题实例分析
2015/07/13 Javascript
基于javascript如何传递特殊字符
2015/11/30 Javascript
JS操作COOKIE实现备忘记录的方法
2016/04/01 Javascript
原生js实现autocomplete插件
2016/04/14 Javascript
用jQuery向div中添加Html文本内容的简单实现
2016/07/13 Javascript
jQuery Ajax File Upload实例源码
2016/12/12 Javascript
jQuery实现圣诞节礼物动画案例解析
2016/12/25 Javascript
Vue实现virtual-dom的原理简析
2017/07/10 Javascript
浅谈sass在vue注意的地方
2017/08/10 Javascript
vue代理和跨域问题的解决
2018/07/18 Javascript
详解微信小程序实现WebSocket心跳重连
2018/07/31 Javascript
KnockoutJS数组比较算法实例详解
2019/11/25 Javascript
[01:05:41]EG vs Optic Supermajor 败者组 BO3 第二场 6.6
2018/06/07 DOTA
Python实现PS图像抽象画风效果的方法
2018/01/23 Python
基于pandas数据样本行列选取的方法
2018/04/20 Python
python3中zip()函数使用详解
2018/06/29 Python
Python图片转换成矩阵,矩阵数据转换成图片的实例
2018/07/02 Python
python/sympy求解矩阵方程的方法
2018/11/08 Python
详解python做UI界面的方法
2019/02/27 Python
Python3.5基础之函数的定义与使用实例详解【参数、作用域、递归、重载等】
2019/04/26 Python
美国礼品卡交易网站:Cardpool
2018/08/27 全球购物
关于环保的建议书400字
2014/03/12 职场文书
环保建议书作文300字
2015/09/14 职场文书
周一给客户的问候语
2015/11/10 职场文书
使用CSS实现一个搜索引擎的原理解析
2021/09/25 HTML / CSS
Nginx流量拷贝ngx_http_mirror_module模块使用方法详解
2022/04/07 Servers
Python OpenGL基本配置方式
2022/05/20 Python