0

使用 jQuery datePicker,我将 minDate 设置为“-3y”。

当我打电话时:

$mydatepicker.datepicker("option", "minDate")

我明白了

-3y

是否可以使用 datePicker 方法将其获取为 mm/dd/yyyy?

4

2 回答 2

0

不幸的是,datepicker 不提供处理相对日期的公共 API,只提供执行此操作的内部方法。
考虑计算 minDate 服务器端——这就是我最终要做的。

如果您仍然绝对需要它:

// DO NOT USE THIS IN PRODUCTION CODE!!
var minDate = $.datepicker._getMinMaxDate( $mydatepicker.data('datepicker'), 'min' ),
    zeroPad = function( toPad, padToLength ) {
        toPad = toPad.toString();
        var i = toPad.length;
        while( i < padToLength  )
            toPad = '0' + toPad, i++;

        return toPad;
    }
    formattedMinDate = zeroPad( minDate.getMonth(), 2 ) + '/'
                       zeroPad( minDate.getDay(), 2 ) + '/'
                       minDate.getFullYear();

请注意,上面的代码是 -bad-并且您应该使用它,因为它依赖于将来可能会在不通知的情况下消失的私有方法。

于 2012-10-12T21:55:52.263 回答
-1

你应该做

var date = $mydatepicker.datepicker({ dateFormat: 'dd-mm-yy' }).val();

或者,您还可以执行以下操作:

var date = $mydatepicker.datepicker('getDate');
$.datepicker.formatDate('dd-mm-yy', date);

如果你想要它作为一个对象,你可以删除.val()

更多信息可在http://docs.jquery.com/UI/Datepicker/formatDatejQuery UI DatePicker - 更改日期格式

于 2012-10-12T20:56:38.633 回答