• 在Bootstrap中得模态框(modal)中下拉不能显示得问题



    $.fn.modal.Constructor.prototype.enforceFocus = function () {
    $("#insertModal").on("shown.bs.modal", function () {
    $("#Ranks_Name").select2({
    dropdownParent: $("#insertModal")
    });
    $("#Role").select2({
    dropdownParent: $("#insertModal")
    });
    })
    $("#updateModal").on("shown.bs.modal", function () {
    $("#Ranks_Name1").select2({
    dropdownParent: $("#updateModal")
    });
    $("#Role1").select2({
    dropdownParent: $("#updateModal")
    });
    })
    };

    在普通页面中使用Select2是正常的,但是在Modal中使用就发现了一些问题,首先如果在页面加载完成后就调用

    $(".select2").select2();是会有问题的,你会发现Modal框中的select显示不正常,正确的做法是要改成

    $("#editModal").on("shown.bs.modal", function(){
                $(".select2").select2();
     })

    这是在Modal显示出来后再初始select2。

    但是又发现另一个问题,如果你的Modal定义是下面这样的

    <div class=" content modal fade" id="editModal" tabindex="-1" role="dialog" aria-labelledby="editModalLabel" aria-hidden="false">

    你会发现select2的输入框不能输入,这时候把tabindex="-1"去掉就可以了。

    还有一个方法是

    在js 内加上下面这句
    $.fn.modal.Constructor.prototype.enforceFocus = function () { };

    经实际验证,tabindex="-1"有时候不一定有效,加上上面这句是可以的

    参考文章http://stackoverflow.com/questions/18487056/select2-doesnt-work-when-embedded-in-a-bootstrap-modal

        https://www.cnblogs.com/sheldon-lou/p/3730905.html

    https://blog.csdn.net/u013126379/article/details/53044933

  • 相关阅读:
    spring boot 配置示例
    MyBatis 常用标签用法
    http请求头部常用参数
    CentOS7使用firewalld打开关闭防火墙与端口
    java8 base64
    MD5工具类
    各种远程登录工具
    MySql 常用命令
    spring-boot-mybaits 开启事务
    springboot 项目打包到 linux下无法 运行
  • 原文地址:https://www.cnblogs.com/bhlr/p/8847886.html
Copyright © 2020-2023  润新知