bootstrap datepicker 在bootstrap modal中不显示问题
在普通的网页中显示datepicker比较简单,将bootstrap-datepicker-zh_CN.js 和 bootstrap-datepicker.css
拷贝到rails工程中相应的assets目录中,并在application.js 和 application.css文件中加载这两个文件
//= require bootstrap-datepicker-zh_CN
*= require bootstrap-datepicker
最后在 在指定的文本域中加入事件即可$("#dp1, #dp2, #dp3").datepicker()
在使用bootstrap modal的时候,把表单的内容放在了modal中,但是日期控件的显示总是在最底层
解决办法:在.datepicker 中加上z-index的控制,css中z-index是用来控制预算的堆叠顺序的,默认是auto
也就是说通过它可以设置datepicker控件的堆叠顺序,这里把z-index设置为 9999,就可以保证日期控件总
是显示在最前端了
修改前:
.datepicker {
top: 0;
left: 0;
padding: 4px;
margin-top: 1px;
-webkit-border-radius: 4px;
-moz-border-radius: 4px;
border-radius: 4px;
}
修改后:
.datepicker {
z-index: 9999;
top: 0;
left: 0;
padding: 4px;
margin-top: 1px;
-webkit-border-radius: 4px;
-moz-border-radius: 4px;
border-radius: 4px;
}
<div class="modal-dialog" role="document"><div class="modal-content"><div class="modal-header"><button type="button" class="close" data-dismiss="modal" aria-label="Close"><span aria-hidden="true">×</span></button><h4 class="modal-title" id="gridSystemModalLabel">添加子账号</h4></div><div class="modal-body"><form class="form-horizontal" id="subAccount-form" action="/secure/setting/account/add" method="post" novalidate="novalidate" data-widget-cid="widget-4"><div class="row form-group"><div class="col-md-3 control-label"><label for="name">Email</label></div><div class="col-md-8 controls"> <input class="form-control" type="text" id="email" value="" name="email" required="required" data-widget-cid="widget-5" data-explain=""><div class="help-block" style="display:none;"></div></div></div><div class="row form-group"><div class="col-md-3 control-label"><label for="name">密码</label></div><div class="col-md-8 controls"> <input class="form-control" type="password" id="password" value="" name="password" required="required" data-widget-cid="widget-5" data-explain=""><div class="help-block" style="display:none;"></div></div></div><div class="row form-group"><div class="col-md-3 control-label"><label for="name">用户名</label></div><div class="col-md-8 controls"> <input class="form-control" type="text" id="childusername" value="" name="childusername" required="required" data-widget-cid="widget-5" data-explain=""><div class="help-block" style="display:none;"></div></div></div><div class="row form-group"><div class="col-md-3 control-label"><label>类别</label></div><div class="col-md-8 controls"><select class="form-control" id="userlevel" name="userlevel"><option value="">请选择</option><option value="0">编辑员</option><option value="1">操作员</option><option value="2">管理员</option></select></div></div><div class="row form-group"><div class="col-md-3 control-label"><label>过期时间</label></div><div class="col-md-8 controls"><div class="input-append date form_datetime"><input class="form-control" size="16" type="text" id="expiredate" value="" name="expiredate" required="required" value="" readonly><span class="add-on"><i class="icon-th"></i></span></div><div class="help-block" style="display:none;"></div></div></div></div><div class="modal-footer"><button type="button" class="btn btn-default" data-dismiss="modal">取消</button><button type="submit" class="btn btn-primary" data-toggle="form-submit" data-target="#subAccount-form">确定</button></div></form></div><!-- /.modal-content --></div><!-- /.modal-dialog --><#-- 待加载的JS -->
<link rel="stylesheet" type="text/css" href="/assets/js/libs/datepicker/css/datepicker.css" />
<style>
.datepicker {
z-index: 9999;
top: 0;
left: 0;
padding: 4px;
margin-top: 1px;
-webkit-border-radius: 4px;
-moz-border-radius: 4px;
border-radius: 4px;
}
</style><script src="/assets/js/libs/datepicker/js/bootstrap-datepicker.js"></script><#-- 待加载的JS -->
<script>$(function(){$("#expiredate").datepicker();jQuery.validator.setDefaults({errorElement : 'p',errorClass : 'help-block',highlight : function(element) {$(element).closest('.form-group').addClass('has-error');},success : function(label) {label.closest('.form-group').removeClass('has-error');label.remove();},errorPlacement : function(error, element) {element.parent('div').append(error);}});$("#subAccount-form").validate({ignore: [],rules : {expiredate : {required : true},userlevel : {required : true},password : {required : true,minlength : 6,maxlength : 20},childusername : {required : true,maxlength : 60},email : {required : true,email : true,remote : 'account/add/checkemail'}},messages : {expiredate : {required : '请设置过期时间'},userlevel : {required : '请选择用户类型'},password : {required : '密码不能为空',minlength : '密码的最小长度不能小于6个字符',maxlength : '密码的最大长度不能超过20个字符'},childusername : {required : '用户名不能为空',maxlength : '用户名的最大长度不能超过60个字符'},email : {required : 'Email不能为空',remote : 'Email已存在,请重新输入'}},submitHandler : function(form) {//form.submit();$.post($(form).attr('action'), $(form).serialize(), function(json) {if(json.status == "success") {Notify.success("<i class='glyphicon glyphicon-saved'></i> 子账号添加成功。", 3);window.location.reload();//$modal.modal('hide');} else if(json.status == "fail") {Notify.danger("fail", 3);} else {Notify.danger("<i class='glyphicon glyphicon-warning-sign'></i> " + json.message, 6);}}, 'json');return false;}}); });
</script>
另外一位网友提供的解决方案,如果上面的不好用,可以试试这个:
可以通过在 input 输入框之外 嵌套<span style="position: relative; z-index: 9999;">完美解决问题。
bootstrap datepicker 在bootstrap modal中不显示问题相关推荐
- 解决select2在bootstrap的modal中默认不显示的问题
解决select2在bootstrap的modal中默认不显示的问题 参考文章: (1)解决select2在bootstrap的modal中默认不显示的问题 (2)https://www.cnblog ...
- html+字体图标找不到字体,bootstrap中不显示字体图标问题怎么解决?
bootstrap中不显示字体图标的原因是什么?怎么解决?下面本篇文章给大家介绍一下.有一定的参考价值,有需要的朋友可以参考一下,希望对大家有所帮助. 你在使用bootstrap字体图标的时候,是否遇 ...
- Bootstrap 模态框插件Modal 的选项
选项 Bootstrap模态框插件modal提供了 4 个选项,所有的选项都可以通过 data 属性或 JavaScript 进行设置.见表 5‑1: 表 5‑1 Bootstrap模态框插件moda ...
- 纯html点击按钮弹出表单,Bootstrap使用模态框modal实现表单提交弹出框
Bootstrap 模态框(Modal)插件 模态框(Modal)是覆盖在父窗体上的子窗体.通常,目的是显示来自一个单独的源的内容,可以在不离开父窗体的情况下有一些互动.子窗体可提供信息.交互等. 如 ...
- Bootstrap 模态框(Modal)
#Bootstrap 模态框(Modal)插件 详细讲解 #####第一步: 加载框架: https://ajax.googleapis.com/ajax/libs/jquery/1.7.1/jque ...
- bootstrap 居中 表格中_使用Twitter Bootstrap在表格单元格中垂直居中
Tom Sarduy.. 156 FOR BOOTSTRAP 3.X: Bootstrap现在具有表格单元格的以下样式: .table tbody > tr > td{ vertical- ...
- bootstrap datetimepicker、bootstrap datepicker日期组件对范围的简单封装
1.bootstrap datepicker 使用 <div class="row form-group"><label class="control- ...
- Bootstrap 模态框插件Modal 的事件
事件 Bootstrap模态框插件modal提供了 4 个事件,通过监听这些事件,可以对特定操作阶段的用户行为作出响应.这些事件及含义见表 5‑2. 表 5‑2 Bootstrap模态框插件modal ...
- Bootstrap 模态框插件Modal 的方法
方法 Bootstrap模态框插件Modal的方法主要用来打开.关闭.隐藏Bootstrap模态框插件Modal: 1..modal(options) 使用一个可选的对象参数 options 调用 B ...
- bootstrap课程5 bootstrap中的组件使用的注意事项是什么
bootstrap课程5 bootstrap中的组件使用的注意事项是什么 一.总结 一句话总结: 1.img-responsive的作用是什么(其实还是要多看手册)? 看起来像width=100%的效 ...
最新文章
- ORA-12514 TNS 监听程序当前无法识别连接描述符中请求服务-Oracle连接错误
- Node_exporter+Prometheus+Grafana 快速实现Linux系统性能数据提取、存储和可视化展示
- C#写的一个代码生成器
- windows简易版本 Redis 使用 demo样例(ssm框架下)
- 收件服务器主机名未响应,邮箱收件服务器主机名是什么
- oracle 时间集合,oracle 日期函数集合(集中版本)第2/2页
- 对任意长度字符串,删除其中的任意的N(N=0)个字符
- 数据可视化可视化营养含量
- 前端传值后端接收不到_关于前端传参数,后台接收的问题
- 心语收集14:人生没有如果,但是有很多但是;人生不能后悔,但是可以拐弯。...
- JavaWeb初学者session的使用
- 博弈论 -- 巴什博弈
- 看两宋风云,搞清了四个之前对两宋历史认识错误的地方
- 苹果开发者账号续费提示“支付授权失败”的问题
- 【Python】—— pipenv使用小结
- 车载毫米波雷达测试(1)_关于雷达的目标检测性能测试与雷达模拟器
- 企业管理 史玉柱:公司只有三个人可以谈战略,其他人抓好执行
- mysql 季度统计_mysql 按年度、季度、月度、周、日SQL统计查询
- Origin作向下柱状图
- 计算机修改wif教程,电脑修改wifi密码步骤