jQuery DatePicker:预防"今天"按钮变灰了

时间:2018-03-08 03:02:27

标签: jquery asp.net-mvc datepicker jquery-ui-datepicker

这与帖子jQuery UI Datepicker Today Link

有关

使用以下代码会产生"今天"按钮呈现黑色。但是,它只能工作一次,因为当"今天"单击按钮它会变回灰色。有没有更好的方法来处理这个,以便显色是永久性的?

$(document).ready(function() {
  $(".datePicker").datepicker({
    changeMonth: true,
    changeYear: true,
    dateFormat: "yy-mm-dd",
    yearRange: "2000:c+1",
    showButtonPanel: true
  });

 $('.datePicker').click(function () {
        $('button.ui-datepicker-current').removeClass('ui-priority-secondary').addClass('ui-priority-primary');
  });
});

更新: https://jsfiddle.net/megoo1xk/14/

1 个答案:

答案 0 :(得分:1)

因为datepicker只有onShow事件而不是onShow,onOpen或afterShow。我们应该自己建立它。

$.datepicker._updateDatepicker_original = $.datepicker._updateDatepicker;
  $.datepicker._updateDatepicker = function(inst) {
    $.datepicker._updateDatepicker_original(inst);
    var afterShow = this._get(inst, 'afterShow');
    if (afterShow)
      afterShow.apply((inst.input ? inst.input[0] : null));
  }

参考:afterShow event on jquery datepicker

如果我们加入您的功能,那就像this fiddle