簡體   English   中英

JQuery-UI Datepicker()單擊以編程方式完成

[英]JQuery-UI Datepicker() click Done programmitally

有誰知道我如何觸發日期選擇器來觸發其onClose()函數,就像用戶做出選擇並單擊“ 完成”按鈕一樣?

也許我在錯誤的位置查看,但似乎無法找到一種方法來觸發模仿用戶選擇日期選擇器並單擊“ 完成”按鈕的事件。

這是我的情況:當用戶選擇一個選項按鈕時,我希望更改日期。 如果用戶選擇選項“ YEAR”,則#StartDate更改為2016年1月,而#EndDate更改為2016年12月。如果用戶選擇選項“ MONTH”,則#StartDate更改為2017年1月,而#EndDate更改為2017年1月。

initModule中 ,兩個日期選擇器都處理了最大最小以及其他要求 ,只有當用戶選擇日期選擇器,更改這些日期並單擊“ 完成”按鈕時,才會執行這些要求。 我想觸發這些事件,而無需用戶手動更改日期。

在我的initModule方法中:

    // ----------------Begin Public Methods----------------------------//
    var initModule = function () {
        var currYear = new Date().getFullYear();

        // Hookup datepickers
        $(#EndDate).datepicker({
            changeMonth: true,
            changeYear: true,
            showButtonPanel: true,
            dateFormat: 'MM yy',
            minDate: new Date(2013, 9, 1),
            maxDate: '-1d',
            beforeShow: function () {
                setTimeout(function () {
                    $("#ui-datepicker-div").addClass('calendar-off');
                }, 0);
            },

            onClose: function () {
                var month = $(#ui-datepicker-div .ui-datepicker-month :selected").val();
                var year = $(#ui-datepicker-div .ui-datepicker-year :selected").val();

                $(this).datepicker('setDate' new Date(year, month, 1));
                onChangeEndDate();
            }
        });
        .
        .
        .
        .
        .
    };
    return { initModule: initModule };

因此,我嘗試了$("#EndDate").click('onClose'); $("#EndDate").trigger('onClose'); 我無處不在,無處可尋。

如何使執行進入onClose:函數(),而用戶不必手動更改日期選擇器中的日期並選擇“ 完成”按鈕?

根據API文檔hide()方法將關閉datepicker。

因此,如果您要關閉日期選擇器,則應該

$(#EndDate).datepicker( "hide" );

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM