jQuery UI Datepicker - 如何让日历和输入字段的宽度相等?

jQuery UI Datepicker - How to have equal width of calendar and input field?

问题: 日历的初始宽度设置为与输入字段的宽度相同。但是,一旦单击 prev/next 按钮(更改月份),日历宽度将重置。

可能的解决方案:像这样使用 onChangeMonthYear 函数,但它不起作用:

onChangeMonthYear: function() {
    $('#ui-datepicker-div').outerWidth($('#thedate').outerWidth());
}

HTML:

<div class="box">
  <input id="thedate" type="text" />
</div>

JS:

$(function(){

    $('#thedate').datepicker({
        dateFormat: 'dd-mm-yy',
        beforeShow: function (input, inst) {
            setTimeout(function() {
                inst.dpDiv.outerWidth($('#thedate').outerWidth());
            },0);
        },
    });

});

JSFIDDLE: http://jsfiddle.net/63x6t1d5/

http://jsfiddle.net/cafp58w6/8/

$(function(){
  $('#thedate').datepicker({
    dateFormat: 'dd-mm-yy',
    beforeShow: function (input, inst) {
      setTimeout(function() {
        inst.dpDiv.outerWidth($('#thedate').outerWidth());
      }, 0);
    },
  });

  $('div.ui-datepicker').on('click',function(){
    $(this).outerWidth($('#thedate').outerWidth());
  });
});