1

我正在审查我用于未完成项目的旧代码,我无法真正理解其中的一部分,你能帮我理解它吗?我正在使用来自http://trentrichardson.com/examples/timepicker/的 datetimepicker,它支持 jQuery UI 日期选择器。这是代码(这是我不明白的 onSelect 事件代码):

    $(function() {
    var dates = $( "#from, #to" ).datetimepicker({
        changeMonth: true,
        onSelect: function( selectedDate ) {
            var option = this.id == "from" ? "minDate" : "maxDate",
                instance = $( this ).data( "datepicker" ),
                date = $.datepicker.parseDate(
                    instance.settings.dateFormat ||
                    $.datepicker._defaults.dateFormat,
                    selectedDate, instance.settings );
            dates.not( this ).datepicker( "option", option, date );
        },
        });
    });
4

1 回答 1

1

如果我没记错的话。有 2 个元素#from and #to,如果用户在#from元素上选择日期值,则 jquery 函数将确定minDate从 #to 元素开始的选定值。
如果用户为#to 选择日期值,则函数将确定maxDate#from 作为给定的选定日期。

总之,功能是通过选择另一个元素来确定元素的minDate或。maxDate

var option = this.id == "from" ? "minDate" : "maxDate", //determine datepicker based on elemen selected
                instance = $( this ).data( "datepicker" ),
                date = $.datepicker.parseDate(
                    instance.settings.dateFormat ||
                    $.datepicker._defaults.dateFormat,
                    selectedDate, instance.settings );  // retrieve selected datepicker data 
            dates.not( this ).datepicker( "option", option, date );  //select another of this element then set minDate or maxDate of datepicker data into the element
于 2012-05-10T07:02:07.133 回答