jQuery ui autocomplete选择列表被Bootstrap模态窗遮挡的完美解决方法


Posted in Javascript onSeptember 23, 2016

最近在一个ASP.NET MVC5项目中使用Bootstrap的模态窗(弹出层)来让用户填写内容,其中的一个编辑框提供了自动完成功能,用jQuery UI Autocomplete来实现。

因为我是WEB前端小白,遇到一个问题很久也没解决掉,所以特简单记录一下,供以后查阅。

问题:不使用模态窗的时候,autocomplete可以很好的工作,使用模态窗时弹出的选择菜单会被模态窗遮挡。

解决过程:

首先查到的解决办法是在*autocomplete.css中找到.ui-autocomplete伪类,添加z-index:

100000000000000000000000000000000;

测试后没有任何作用,也用Firebug尝试去调试页面,虽然查看到弹出层的z-index值为1041,而autocomplete生成的ul并没有z-index值,以我的功力还是无从下手。

最后在博客园找到一篇帖子基于Jquery-ui的自动补全,按照贴子里的做法,在cshtml文件最后添加了下面一段CSS代码,终于成功解决。

<style type="text/css">
.ui-autocomplete{
display:block;
z-index:99999;
}
</style>

然而,当我把这代码单独保存到一个CSS(autocomplete-zindex.css)文件,再引入到页面中时,问题又回到之前的状态了。

@section Scripts{
<link href="~/Content/jquery-ui-autocomplete.css" rel="stylesheet" />
<link href="~/Content/autocomplete-zindex.css" rel="stylesheet" />
<script src="~/Scripts/jquery-ui-autocomplete.js" type="text/javascript"></script>
<link href="~/Content/jquery-ui-datepicker.css" rel="stylesheet" />
<script src="~/Scripts/jquery-ui-datepicker.js" type="text/javascript"></script>
<script src="~/Scripts/datepicker-zh-HK.js" type="text/javascript"></script>
<script src="~/Scripts/datepicker-setting.js" type="text/javascript"></script>
}

上面一段代码的本意是将对autocomplete和datepicker的引用分开,相对独立便于维护。

经过反复尝试后发现,原来是因为jquery-ui-datepicker.css放在后面导致,把顺序调换一下就可以了

<link href="~/Content/jquery-ui-autocomplete.css" rel="stylesheet" />
<link href="~/Content/jquery-ui-datepicker.css" rel="stylesheet" />
<link href="~/Content/autocomplete-zindex.css" rel="stylesheet" />

走到这,也就明白了,其实直接改.ui-autocomplete伪类代码,加上z-index:99999;其实也是正确的,不过就是要注意放在datepicker.css文件之后罢了。

方案:

1.简单:直接修改jquery-ui-autocomplete.css中的.ui-autocomplete伪类,注意将该css文件放在所有css文件的最后

2.粗暴:直接在cshtml页面代码最下面添加代码:<style type="text/css">.ui-autocomplete{z-index:99999;}</style>

3.伪雅:将第二步代码写在单独的css文件,然后保持对该css文件的引用放在所有css文件之后

以上所述是小编给大家介绍的jQuery ui autocomplete选择列表被Bootstrap模态窗遮挡的完美解决方法,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!

Javascript 相关文章推荐
EXTJS内使用ACTIVEX控件引起崩溃问题的解决方法
Mar 31 Javascript
js实现addClass,removeClass,hasClass的函数代码
Jul 13 Javascript
网页下载文件期间如何防止用户对网页进行其他操作
Jun 27 Javascript
用JavaScript实现使用鼠标画线的示例代码
Aug 19 Javascript
node.js中的querystring.parse方法使用说明
Dec 10 Javascript
Jquery插件实现点击获取验证码后60秒内禁止重新获取
Mar 13 Javascript
JS实现新浪微博效果带遮罩层的弹出框代码
Oct 12 Javascript
基于JQuery实现分隔条的功能
Jun 17 Javascript
jQuery实现手势解锁密码特效
Aug 14 jQuery
浅谈vue引用静态资源需要注意的事项
Sep 28 Javascript
关于vue.js中实现方法内某些代码延时执行
Nov 14 Javascript
JS模拟实现京东快递单号查询
Nov 30 Javascript
bootstrap与Jquery UI 按钮样式冲突的解决办法
Sep 23 #Javascript
jQuery easyui刷新当前tabs的方法
Sep 23 #Javascript
AngularJS通过$location获取及改变当前页面的URL
Sep 23 #Javascript
AngularJS监听路由的变化示例代码
Sep 23 #Javascript
同步异步动态引入js文件的几种方法总结
Sep 23 #Javascript
JS 动态加载js文件和css文件 同步/异步的两种简单方式
Sep 23 #Javascript
常用js,css文件统一加载方法(推荐) 并在加载之后调用回调函数
Sep 23 #Javascript
You might like
ASP和PHP都是可以删除自身的
2007/04/09 PHP
PHP添加文字水印或图片水印的水印类完整源代码与使用示例
2019/03/18 PHP
PHP pthreads v3使用中的一些坑和注意点分析
2020/02/21 PHP
IE6与IE7中,innerHTML获取param的区别
2009/03/15 Javascript
jquery1.4 教程二 ajax方法的改进
2010/02/25 Javascript
基于jQuery的input输入框下拉提示层(自动邮箱后缀名)
2012/06/14 Javascript
Extjs中的GridPanel隐藏列会显示在menuDisabled中解决方法
2013/01/27 Javascript
javascript调试之DOM断点调试法使用技巧分享
2014/04/15 Javascript
javascript中DOM复选框选择用法实例
2015/05/14 Javascript
jQuery实现分章节锚点“回到顶部”动画特效代码
2015/10/23 Javascript
jQuery如何解决IE输入框不能输入的问题
2016/10/08 Javascript
vue.js初学入门教程(1)
2016/11/03 Javascript
vue实现app页面切换动画效果实例
2017/05/23 Javascript
JS中利用FileReader实现上传图片前本地预览功能
2018/03/02 Javascript
Vue中对iframe实现keep alive无刷新的方法
2019/07/23 Javascript
node.js开发辅助工具nodemon安装与配置详解
2020/02/06 Javascript
python网络编程实例简析
2014/09/26 Python
python比较两个列表是否相等的方法
2015/07/28 Python
Python实现选择排序
2017/06/04 Python
Python找出最小的K个数实例代码
2018/01/04 Python
基于python的多进程共享变量正确打开方式
2018/04/28 Python
详解Python的循环结构知识点
2019/05/20 Python
python 应用之Pycharm 新建模板默认添加编码格式-作者-时间等信息【推荐】
2019/06/17 Python
详解python中的index函数用法
2019/08/06 Python
Django命名URL和反向解析URL实现解析
2019/08/09 Python
在vscode中配置python环境过程解析
2019/09/28 Python
Django实现简单的分页功能
2021/02/22 Python
蓝颜请假条
2014/04/11 职场文书
党员群众路线对照检查材料思想汇报
2014/09/17 职场文书
销售经理岗位职责范本
2015/04/02 职场文书
院系推荐意见
2015/06/05 职场文书
初中语文教学研修日志
2015/11/13 职场文书
javascript数组includes、reduce的基本使用
2021/07/02 Javascript
Java面试题冲刺第十七天--基础篇3
2021/08/07 面试题
P站美图推荐——变身女主角特辑
2022/03/20 日漫
解决Springboot PostMapping无法获取数据的问题
2022/05/06 Java/Android