DatePicker

时间:2016-03-22 07:59:24

标签: javascript jquery datepicker jquery-ui-datepicker

我正在尝试在加载时在输入框中显示上个月和年份。

现在,在聚焦/点击日期选择器后,日期将被设置并显示一次。

任何人都可以帮我显示前一个月和一年(2016年2月)刚刚加载,这意味着在我点击从datepicker中选择任何日期之前

下面是我的代码和演示链接JSFiddler



$(document).ready(function(){
  $('.monthYearPicker').datepicker({
    changeMonth: true,
    changeYear: true,
    showButtonPanel: true,
    dateFormat: 'MM yy',
    yearRange: "-2:+0",
    defaultDate: '-1m'
  }).focus(function() {
    var thisCalendar = $(this);
    $('.ui-datepicker-calendar').detach();
    $('.ui-datepicker-close').click(function() {
      var Month = $("#ui-datepicker-div .ui-datepicker-month :selected").val();
      var iYear = $("#ui-datepicker-div .ui-datepicker-year :selected").val();	
      thisCalendar.datepicker('setDate', new Date(iYear, Month, 1));
      var iMonth = $("#ui-datepicker-div .ui-datepicker-month :selected").text();
    });
  });
});

.ui-datepicker-calendar {
  display: none;
}

<link href="http://ajax.googleapis.com/ajax/libs/jqueryui/1.7.2/themes/base/jquery-ui.css" rel="stylesheet"/>
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.4.1/jquery.js"></script>
<script src="http://ajax.googleapis.com/ajax/libs/jqueryui/1.7.2/jquery-ui.min.js"></script>
<label for="startDate">Date :</label>
<input name="myDate" class="monthYearPicker" />
&#13;
&#13;
&#13;

1 个答案:

答案 0 :(得分:2)

  

任何人都可以帮助我显示上一个月和一年(2016年2月)刚加载,

您只需要像这样使用setDate

$(document).ready(function() {
  $('.monthYearPicker').datepicker({
    changeMonth: true,
    changeYear: true,
    showButtonPanel: true,
    dateFormat: 'MM yy',
    yearRange: "-2:+0",
    defaultDate: '-1m'
  }).focus(function() {
    var thisCalendar = $(this);
    $('.ui-datepicker-calendar').detach();
    $('.ui-datepicker-close').click(function() {
      var Month = $("#ui-datepicker-div .ui-datepicker-month :selected").val();
      var iYear = $("#ui-datepicker-div .ui-datepicker-year :selected").val();
      thisCalendar.datepicker('setDate', new Date(iYear, Month, 1));
      var iMonth = $("#ui-datepicker-div .ui-datepicker-month :selected").text();
    });
  }).datepicker('setDate', "-1m y"); //<<-----set this here.
});
.ui-datepicker-calendar {
  display: none;
}
<link href="http://ajax.googleapis.com/ajax/libs/jqueryui/1.7.2/themes/base/jquery-ui.css" rel="stylesheet" />
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.4.1/jquery.js"></script>
<script src="http://ajax.googleapis.com/ajax/libs/jqueryui/1.7.2/jquery-ui.min.js"></script>
<label for="startDate">Date :</label>
<input name="myDate" class="monthYearPicker" />