JQuery ui - 日期选择器,日期格式

时间:2015-07-30 07:01:49

标签: javascript jquery date jquery-ui-datepicker

我想要实现与此qeustion JQuery ui - date picker, disabling specific dates相同的功能,脚本工作正常(请参阅下面的代码),但问题是我从数据库获取不可用日期,因此日期前导零,即var unavailableDates = ["90-3-2012", "14-03-2012", "15-03-2012"]; 如果我使用相同的日期进行测试而没有前导零,那么它可以工作,但我想要使用前导零。

我们如何格式化日期,我正在使用上述问题的答案中的确切代码,这里是代码

<script type="text/javascript">
    var unavailableDates = ["9-3-2012", "14-3-2012", "15-3-2012"];

    function unavailable(date) {
        dmy = date.getDate() + "-" + (date.getMonth() + 1) + "-" + date.getFullYear();
        if ($.inArray(dmy, unavailableDates) == -1) {
            return [true, ""];
        } else {
            return [false, "", "Unavailable"];
        }
    }

    $(function() {
        $("#iDate").datepicker({
            dateFormat: 'dd MM yy',
            beforeShowDay: unavailable
        });

    });
</script>

1 个答案:

答案 0 :(得分:3)

你可以使用datepicker到format date之类的

var unavailableDates = ["09-03-2012", "14-03-2012", "15-03-2012", "15-07-2015"];

function unavailable(date) {
  var dmy = $.datepicker.formatDate('dd-mm-yy', date);
  console.log(dmy)
  if ($.inArray(dmy, unavailableDates) == -1) {
    return [true, ""];
  } else {
    return [false, "", "Unavailable"];
  }
}

$(function() {
  $("#iDate").datepicker({
    dateFormat: 'dd MM yy',
    beforeShowDay: unavailable
  });

});
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.11.0/jquery.js"></script>
<link rel="stylesheet" type="text/css" href="http://ajax.googleapis.com/ajax/libs/jqueryui/1.11.4/themes/redmond/jquery-ui.css" />
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jqueryui/1.11.4/jquery-ui.js"></script>

<input id="iDate" />