Datetimepicker不使用不同的格式

时间:2017-05-11 13:59:06

标签: javascript jquery datetimepicker

您好我正在尝试为预订过滤,人们可以在他们想要注册的日期之间进行过滤。我使用了日期时间选择器(http://xdsoft.net/jqplugins/datetimepicker/)但是选择器的表单不起作用(不允许我从中选择日期)。我正在使用d.m.Y格式,这似乎是问题,因为它使用Y / d / m,但我们不能使用这种格式。这是我的代码:

function addPicker() {
$.datetimepicker.setLocale('cs');
$( "#from" ).datetimepicker({
    timepicker:false,
    format:'d.m.Y',
    value:  '+1970/01/02', //today
    scrollMonth : false,
    scrollInput : false,
    minDate: '+1970/01/02',
    onShow:function( ct ){
        this.setOptions({
            maxDate:$('#to').val()?jQuery('#to').val():false
        })
    }
});
$( "#to" ).datetimepicker({
    timepicker:false,
    format:'d.m.Y',
    value:  '+1970/01/08', //a week from today
    scrollMonth : false,
    scrollInput : false,
    onShow:function( ct ){
        this.setOptions({
            minDate:jQuery('#from').val()?jQuery('#from').val():false
        })
    }

});
}
$(document).ready(function () {
addPicker();
});

和html:

<input type="text" name="from" id="from">
<input type="text" name="to" id="to">

如果您有任何提示,请告诉我。感谢。

1 个答案:

答案 0 :(得分:0)

好吧,似乎作者没有考虑将不同的格式返回到maxDate,所以我创建了一个小脚本来将我的日期转换为US格式。只是要把它留在这里,这样可以帮助别人。

function convertDate(czechDate){
   var parsed = czechDate.split(".");
   return parsed[2]+"/"+parsed[1]+"/"+parsed[0];
}

并更改了原始代码。

function addPicker() {
  $.datetimepicker.setLocale('cs');

  $("#from").datetimepicker({
    timepicker: false,
    format: 'd.m.Y',
    value: '+1970/01/02', //today
    scrollMonth: false,
    scrollInput: false,
    minDate: '+1970/01/02',
    onShow: function(ct) {
      this.setOptions({

        maxDate: $('#to').val() ? convertDate(jQuery('#to').val()) : false
      })
    }
  });
  $("#to").datetimepicker({
    timepicker: false,
    format: 'd.m.Y',
    value: '+1970/01/08', //a week from today
    scrollMonth: false,
    scrollInput: false,
    onShow: function(ct) {
      this.setOptions({
        minDate: jQuery('#from').val() ? convertDate(jQuery('#from').val()) : false
      })
    }

  });
}

function convertDate(czechDate) {
  var parsed = czechDate.split(".");
  return parsed[2] + "/" + parsed[1] + "/" + parsed[0];
}
$(document).ready(function() {
  addPicker();
});
<link href="https://cdnjs.cloudflare.com/ajax/libs/jquery-datetimepicker/2.5.4/build/jquery.datetimepicker.min.css" rel="stylesheet" />
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery-datetimepicker/2.5.4/build/jquery.datetimepicker.full.min.js"></script>



<input type="text" name="from" id="from">
<input type="text" name="to" id="to">