jquery ui中的月份和年份选择器中的范围选择器

时间:2015-09-24 12:02:20

标签: jquery asp.net vb.net

我有两个文本框,使用jquery-UI.it的月份和年份选择器适用于两个文本框。现在我希望如果用户从(文本框)选择一个月,那么to(文本框)的mindate(月)应该是用户在From textbox中选择的月份。我怎么能实现这一点。 这是我显示月份和年份选择器的代码。

            $("#<%=frm_txtdatefrm.ClientID %>").datepicker({
            changeMonth: true,
            changeYear: true,
            showButtonPanel: true,
            dateFormat: 'M yy'
        }).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 year = $("#ui-datepicker-div .ui-datepicker-year :selected").val();
                thisCalendar.datepicker('setDate', new Date(year, month, 1));
            });
        });

        $("#<%=frm_txtdateto.ClientID %>").datepicker({
            changeMonth: true,
            changeYear: true,
            showButtonPanel: true,
            dateFormat: 'M yy'
        }).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 year = $("#ui-datepicker-div .ui-datepicker-year :selected").val();
                thisCalendar.datepicker('setDate', new Date(year, month, 1));
            });
        });

1 个答案:

答案 0 :(得分:0)

有一个选择jQuery UI website上的日期范围的示例。

onClose event添加一项功能,并为minDate选项设置一个值。

以下是示例中的代码:

$(function() {
    $( "#from" ).datepicker({
        defaultDate: "+1w",
        changeMonth: true,
        numberOfMonths: 3,
        onClose: function( selectedDate ) {
            $( "#to" ).datepicker( "option", "minDate", selectedDate );
        }
    });
    $( "#to" ).datepicker({
        defaultDate: "+1w",
        changeMonth: true,
        numberOfMonths: 3,
        onClose: function( selectedDate ) {
            $( "#from" ).datepicker( "option", "maxDate", selectedDate );
        }
    });
});