javascript - Bootstrap 日期选择器未在自定义灯箱中打开

标签 javascript jquery css twitter-bootstrap datepicker

我有一个自定义灯箱并尝试在灯箱区域内运行 Bootstrap 日期选择器,但日期选择器显示在灯箱后面,有人可以为此提出修复建议吗?

这是 JSfiddle demo

$(document).ready(function() {
    //open lightbox
    $(".ajaxLightbox").click(function() {
        $(".ajaxLightboxWrapper").fadeIn();
    });
    //close lightbox
	$(".ajaxLightBoxClose, .ajaxLightboxLayer").click(function() {
        $(".ajaxLightboxWrapper").fadeOut();
    });
	//open datepicker
    $('#counselling-datepicker-lightbox').datepicker({
        autoclose: true
    });
});
.ajaxLightboxWrapper {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  display: none;
  z-index: 99999;
}
.ajaxLightboxContent {
  position: absolute;
  left: 0;
  right: 0;
  margin: -250px auto 0 auto;
  top: 50%;
  max-width: 600px;
  height: 500px;
  background-color: #ffffff;
  z-index: 2;
  padding: 10px;
  box-sizing: border-box;
}
.ajaxLightboxInner {
  position: relative;
  width: 100%;
  height: 100%;
  float: left;
}
.ajaxLightboxLayer {
  background: rgba(0, 0, 0, 0.6);
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  position: absolute;
  z-index: 1;
}
.ajaxLightBoxClose {
  font-family: arial;
  font-size: 22px;
  height: 30px;
  line-height: 30px;
  position: absolute;
  right: 0;
  text-align: center;
  top: 0;
  width: 30px;
  cursor: pointer;
  z-index: 2;
}
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/bootstrap-datepicker/1.6.4/css/bootstrap-datepicker.css">
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.12.4/jquery.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/bootstrap-datepicker/1.6.4/js/bootstrap-datepicker.min.js"></script>
<p><a href="#" class="ajaxLightbox">Datepicker in lightbox</a></p>
<div class="ajaxLightboxWrapper">
  <div class="ajaxLightboxContent">
    <div class="ajaxLightBoxClose">X</div>
    <div class="ajaxLightboxInner" style="position:relative;"> 
    	<input type="text" id="counselling-datepicker-lightbox" style="border:1px solid #000; padding:5px;">
     </div>
  </div>
  <div class="ajaxLightboxLayer"></div>
</div>

最佳答案

您需要提供适当的容器才能在您的自定义模式框中正确呈现它。 我为您的 ajaxLightboxInner 提供了 ID,并将其指定为日期输入文本框中的容器。 data-date-container='#ajaxLightboxInner'

<p><a href="javascript:void(0);" class="ajaxLightbox">Datepicker in lightbox</a></p>
<div class="ajaxLightboxWrapper" id="mymodal">
  <div class="ajaxLightboxContent">
    <div class="ajaxLightBoxClose">X</div>
    <div class="ajaxLightboxInner" id="ajaxLightboxInner"> 
        <input type="text" id="counselling-datepicker-lightbox" data-date-container='#ajaxLightboxInner'>

     </div>
  </div>
  <div class="ajaxLightboxLayer">


  </div>
</div>


$(document).ready(function() {
    //open lightbox
    $(".ajaxLightbox").click(function() {
        $(".ajaxLightboxWrapper").fadeIn();
        $('#counselling-datepicker-lightbox').datepicker({
        autoclose: true
    });
    });
    //close lightbox
    $(".ajaxLightBoxClose, .ajaxLightboxLayer").click(function() {
        $(".ajaxLightboxWrapper").fadeOut();
    });
    //open datepicker

  $("#btn").click(function(){


  });

});

Link to updated Fiddle

关于javascript - Bootstrap 日期选择器未在自定义灯箱中打开,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41714729/

相关文章:

javascript - 三.js : face4 generates triangle instead of square

javascript - Vue js v-bind 功能不起作用?

javascript - jquery自动完成动态插入的具有未知id的元素

jquery - chrome 中的 css 仅在检查元素后有效

javascript - 使用 JQuery 将数据从 Datatable 单元格解析到 Controller ,接收 null 值

html - 图像显示为背景但不是 img src

html - 我有哪些选项来显示分层数据?

javascript - jQuery 更新 cookie 值

javascript - 如何以编程方式填写 Microsoft Office Forms 表单?

javascript - jquery mobile 底部图标导航栏如何只重新加载页面内容