zoukankan      html  css  js  c++  java
  • Bootstrap++:bootstrap-select 使用

    效果图:

    HTML:

    <!DOCTYPE html>
    <html lang="en" xmlns:th="http://www.thymeleaf.org">
    <head>
        <meta charset="UTF-8">
        <title>下拉框多选</title>
    
        <!-- 最新版本的 Bootstrap 核心 CSS 文件 -->
        <link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/bootstrap@3.3.7/dist/css/bootstrap.min.css" >
    
        <script type='text/javascript' th:src='@{/ecej/core/jquery-3.2.0.min.js}'></script>
        <script src="https://cdn.jsdelivr.net/npm/bootstrap@3.3.7/dist/js/bootstrap.min.js" ></script>
    
        <link rel='stylesheet' type="text/css" th:href='@{/core/bootstrap-select-1.13.14/bootstrap-select.min.css}'/>
        <script type='text/javascript' th:src='@{/core/bootstrap-select-1.13.14/bootstrap-select.js}'></script>
    
        <script type='text/javascript' th:src='@{/multipleSelect.js}'></script>
    
    </head>
    <body>
    
    <fieldset>
        <legend>bootstrap</legend>
        <div class="form-controls" style=" 300px;">
            <select class="selectpicker show-tick form-control" multiple="multiple" title="请选择工厂" data-size="10"
                    data-selected-text-format="count > 15"
                    data-live-search="true" data-live-search-placeholder="搜索"
                    data-actions-box="true" data-select-all-text="全选" data-deselect-all-text="重置"
                    id="xinghao_id" name="xinghao_id" value="{$info.xinghao_id}">
            </select>
        </div>
    </fieldset>
    <hr/>
    <button id="btn">获取</button>
    </body>
    </html>

    自定义 JS:

    $(function () {
    
        // 获取
        $("#btn").click(function () {
            var _vals = $("#xinghao_id").val();
            console.log(_vals)
        });
    
        var _option = "";
        for (var i = 0; i < 100; i++) {
            _option += '<option value="' + i + '">' + '测试' + i + '</option>';
        }
        $("#xinghao_id").append(_option);
    
        // 动态追加元素需要 重新刷新渲染
        $('.selectpicker').selectpicker('refresh');
    
    });

    需把对应bootstrap-select 相关文件URL引入替换;可直接使用

    常用属性介绍:

    1、class="selectpicker" 普通的下拉框功能

    2、title="请选择城市名称" title的作用与palcehoder一样。

    3、select class="selectpicker" multiple selectpicker和multiple属性的搭配使用可实现多选

    4、data-live-search="true" 这个属性的默认值是false,作用是打开模糊筛查搜索框。

    5、data-max-options 这个属性表示最多可选几个,搭配multiple使用,用法:data-max-options=“2”,表示最多选两个。

    6、data-selected-text-forma缩略模式, 用法:data-selected-text-format="count > 3",当选中值大于3个的时候只显示选中项的个数,注意只对多选生效。

    7、data-style 表示默认选中样式,用法:data-style="btn-primary",属性值就是bootstrap的按钮样式。

    8、data-size data-size="6",表示下拉框显示的下拉列表数量 超出条数后出现滚动条。

    9、data-dropup-auto="false", 表示下拉框默认向下展开;"true",表示下拉框默认向下展开;"auto",(默认值)表示下拉框根据页面尺寸自动向下或向上展开。

    10、$('.selectpicker').selectpicker('selectAll'); 全选

           $('.selectpicker').selectpicker('deselectAll'); 反选:

           $('.selectpicker').selectpicker('mobile'); 适应手机模式:

    11、给下拉框赋初始值   .selectpicker:eq(0)表示该页面或者该表单的第几个使用了第几个selectpicker属性的input标签。

            $('.selectpicker:eq(0)').selectpicker('val',valArea);

            $('.selectpicker:eq(1)').selectpicker('val',valPost);

            $('.selectpicker:eq(2)').selectpicker('val',valBank);

            $('.selectpicker').selectpicker('refresh');

            $('.selectpicker').selectpicker('render');

    12、与angular或者knockout合用问题:

      即下拉框无法显示出选项,但实际上,按下F12去查看时,又明显的有这些选项值,只是页面无法展示。

      a. 添加Js:(只有在编译之后第一次进入页面的时候生效,一旦刷新之后就失效(因为angular异步加载)
      $(function () {

        $('.selectpicker').selectpicker('refresh');
        $('.selectpicker').selectpicker('render');
      })

    更多资料:

    1):核心选择:可以通过数据属性或JavaScript传递选项。对于数据属性,附加选项名称  data-,如  data-style="" 或  data-selected-text-format="count"

    2):大事记变迁:Bootstrap-select公开了一些事件以供选择功能使用。

    hide.bs.select,hidden.bs.select,show.bs.select和showd.bs.select都具有一个  relatedTarget 属性,其值是切换锚元素。

    $('#mySelect').on('hidden.bs.select', function (e) {
      // do something...
    });

    传送门官网地址:https://developer.snapappointments.com/bootstrap-select/examples/

  • 相关阅读:
    51Nod1119
    stoi
    坑爹大质数
    USACO07OPEN Cheapest Palindrome
    USACO08NOV Mixed Up Cows
    USACO12FEB Nearby Cows
    SCOI2009 粉刷匠
    USACO16OPEN 248
    POI2014 PTA-Little Bird
    USACO17FEB Why Did the Cow Cross the Road I G
  • 原文地址:https://www.cnblogs.com/codingmode/p/13391585.html
Copyright © 2011-2022 走看看