selectpicker用法

引入CSS,JS文件

 

bootstrap.min.css
bootstrap-select.min.css
jquery-3.7.0.min.js
bootstrap.bundle.min.js
bootstrap-select.min.js
<!-- CSS -->
    <link href="https://cdn.bootcdn.net/ajax/libs/twitter-bootstrap/4.6.2/css/bootstrap.min.css" rel="stylesheet"
        integrity="sha384-xOolHFLEh07PJGoPkLv1IbcEPTNtaed2xpHsD9ESMhqIYd0nLMwNLD69Npy4HI+N" crossorigin="anonymous">
    <link rel="stylesheet" href="https://cdn.bootcdn.net/ajax/libs/bootstrap-select/1.13.18/css/bootstrap-select.min.css">

<!-- jQuery and JavaScript Bundle with Popper --> <script src="https://code.jquery.com/jquery-3.7.0.min.js"></script> <script src="https://cdn.bootcdn.net/ajax/libs/twitter-bootstrap/4.6.2/js/bootstrap.bundle.min.js"></script> <script src="https://cdn.bootcdn.net/ajax/libs/bootstrap-select/1.13.18/js/bootstrap-select.min.js"></script>

 

<body>
    <div class="col-md-4 ceshi" style="padding:0;">
        <select id="selectSf" class="selectpicker hehe" multiple data-hide-disabled="true" data-size="5"
            data-live-search="false">
            <option value="00000000" selected="">alphabet</option>
            <option value="10000000">aa</option>
            <option value="20000000">bbb</option>
            <option value="20000000">cccc</option>
            <option value="30000000">ddddd</option>
            <option value="40000000">eeeeee</option>
        </select>
    </div>
    <div class="ceshi2">

    </div>

    <button class="add">添加</button>
</body>
<script>
    //动态添加selectpicker控件
    $(function () {
        $('.add').click(function () {
            var div = $('.ceshi select').clone();                    //克隆selectpicker控件
            $('.ceshi2').html(div);                                        //添加到ceshi2下面
            var char = '';
            char += "<option value='11111'>jjjjjj</option>";                //动态新增option选项
            char += "<option value='22222'>kkkk</option>";
            char += "<option value='33333'>0000</option>";
            char += "<option value='44444'>77777</option>";
            $('.ceshi2 select').append(char);                //添加选项到新增的selectpicker控件
            $('.ceshi2 select').selectpicker();                    //初始化selectpicker控件

        })
    })
</script>

 

 

获取selectpicker的值

var wk = $('.worker_lst').selectpicker('val');

  

设置selectpicker的值

$('.worker_lst').selectpicker('val', workers);  //workers为数组对象

 

 

问题:当jquery使用append添加selectpicker时,会出现重复

<div class="row mt-15 sel_cailiao">
                    <div class="col-md-5 col-sm-12">
                        <select class="selectpicker form-control">
                            <option value="0">请选择材料</option>
                            <?php foreach($haocai as $k=>$v):?>
                            <option value="<?php echo $v['id']?>">
                                <?php echo $v['cname']?>
                            </option>
                            <?php endforeach?>
                        </select>
                    </div>
                    <div class="col-md-4 col-sm-12">
                        <input class="selectpicker form-control  mm-form-control" />
                    </div>
                    <div class="col-md-3 col-sm-12 mm-buttona">
                        <a class=" rounded reduce" href="javascript:;">-</a>
                        <a class=" rounded add" href="javascript:;">+</a>
                    </div>
                </div>

解决方法:

$('.sel_cailiao').on('click', '.add', function () {
        var div = $(this).closest('.sel_cailiao').clone();
        $(div).find('select.selectpicker').selectpicker('val', 0);
        $('#gdxq .modal-body').append(div);
        $(div).children().children().children('button').remove();
    });

 

posted @ 2023-08-11 22:47  哆啦阿梦  阅读(259)  评论(0编辑  收藏  举报