minDate:0,不在datepicker中工作

时间:2017-12-12 08:59:34

标签: javascript jquery datepicker mindate

我在我的CodeIgniter应用程序中使用AdminLte模板,并且我使用了Datepicker插件。我尝试添加minDate功能以限制用户访问当前日期的上一个日期,但minDate: 0无效,我也可以选择上一个日期。

这是我的JS:

$('#datepicker5').datepicker({
      autoclose: true,
      //changeYear: true,
      minDate: 0,
    });

$('#datepicker5').datepicker({
      autoclose: true,
      //changeYear: true,
      minDate: new Date(),
    })

今天的日期 2017年12月12日但我也可以选择上一个日期。 enter image description here 两者都不起作用。

我使用了两个不同ID的日期选择器。一个是datepicker4datepicker5,我正在计算差异。它们之间。为此,我写了以下JS:

$('#datepicker4').datepicker();
  $('#datepicker5').datepicker();
  $('#datepicker5').change(function () {
      var gasDiff= $('#datepicker4').datepicker("getDate") - $('#datepicker5').datepicker("getDate");
      var result = gasDiff / (1000 * 60 * 60 * 24) * -1;

      document.getElementById("gasDiff").value = result;
  });

即使我可以在签发日期之前选择到期日。 实际上我想选择发布日期或当前日期,以及当前日期之后的到期日期。

修改

$('#datepicker1').datepicker({
    autoclose: true,
    endDate: new Date(),
    todayHighlight: true,

  });

  $("#datepicker1").on("change",function(){
        var selected = "Are you sure you want to select this date ?";
        alert(selected);
    });
  //$('#datepicker1')..inputmask('dd/mm/yyyy', { 'placeholder': 'dd/mm/yyyy' });

  $('#datepicker2').datepicker({
    autoclose: true,
    todayHighlight: true,
    startDate: new Date(),
  });

  $('#datepicker1', '#datepicker2').change(function(){
    var certDiff= $('#datepicker1').datepicker("getDate") - $('#datepicker2').datepicker("getDate");    
    var result = certDiff / (1000 * 60 * 60 * 24) * -1;
    //("#certDiff").text(result);
    document.getElementById("certDiff").value = result;
    //document.getElementById("certDiff").innerHTML = result;
  });

欢迎任何形式的帮助,提前致谢。

2 个答案:

答案 0 :(得分:3)

这看起来像bootstrap-datepicker插件。使用startDate: "12/12/2017"代替minDate: new Date()

您可以在documentation

中找到更多详情

答案 1 :(得分:1)

如上所述bootstrap-datepicker插件正在使用startDate: new Date()属性

$('#datepicker4').datepicker({
autoclose: true,
startDate: new Date() 
});

$('#datepicker5').datepicker({
 autoclose: true,
 startDate: new Date(),
}).change(function(){
var gasDiff= $('#datepicker4').datepicker("getDate") - $(this).datepicker("getDate");    
var result = gasDiff / (1000 * 60 * 60 * 24) * -1;
  $("#gasDiff").text(result);
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/bootstrap-datepicker/1.7.1/js/bootstrap-datepicker.js"></script>
<link href="https://cdnjs.cloudflare.com/ajax/libs/bootstrap-datepicker/1.7.1/css/bootstrap-datepicker.css" rel="stylesheet"/>

<input type="text" id="datepicker4"/>
<input type="text" id="datepicker5"/>
<div id="gasDiff">

</div>