首页 > web前端 > js教程 > 正文

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

亚连
发布: 2018-05-31 16:34:34
原创
2491人浏览过

下面我就为大家分享一篇layui之select的option叠加问题的解决方法,具有很好的参考价值,希望对大家有所帮助。

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

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33

34

35

36

37

38

39

40

41

42

43

44

45

46

47

48

49

50

51

52

53

54

55

56

57

58

59

60

61

62

63

64

65

66

67

68

69

70

71

72

73

74

75

76

77

78

79

80

81

82

83

<!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>

<p id="wrap">

 <p class="layui-form" lay-filter="merchantForm">

 <p class="layui-form-item">

 <label class="layui-form-label">选择框</label>

 <p class="layui-input-block">

  <select name="city" lay-verify="required" id="test1" lay-filter="test1">

  <option value="0">时间</option>

  <option value="1">金额</option>

  </select>

 </p>

 </p>

 <p class="layui-form-item">

 <label class="layui-form-label">选择框</label>

 <p class="layui-input-block">

  <select name="city" lay-verify="required" id="test2" lay-filter="test2">

  <option value="">请选择规则名称</option>

  </select>

 </p>

 </p>

</p>

<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>

登录后复制

上面是我整理给大家的,希望今后会对大家有帮助。

相关文章:

vue渲染时闪烁{{}}的问题及解决方法

浅谈js获取ModelAndView值的问题

vue页面加载闪烁问题的解决方法

以上就是layui之select的option叠加问题的解决方法的详细内容,更多请关注php中文网其它相关文章!

最佳 Windows 性能的顶级免费优化软件
最佳 Windows 性能的顶级免费优化软件

每个人都需要一台速度更快、更稳定的 PC。随着时间的推移,垃圾文件、旧注册表数据和不必要的后台进程会占用资源并降低性能。幸运的是,许多工具可以让 Windows 保持平稳运行。

下载
相关标签:
来源:php中文网
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
最新问题
开源免费商场系统广告
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习
PHP中文网抖音号
发现有趣的

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号