Pikaday выбирает 2018, даже если для YearRange установлено [1968, 2005] - PullRequest
0 голосов
/ 27 июня 2018

Как сделать год 2005 выбранным по умолчанию в поле выбора.

$(function () {
    var field = $('#calendar')[0];
    

    var pika = new Pikaday({
        field: field,
        yearRange: [1968, 2005],
        onSelect: function () {
            console.log('selected');
        },
        onOpen: function () {
            console.log('open');
        },

        onClose: function () {
            console.log('closed');
        }
    });

});
<link href="https://rawgit.com/dbushell/Pikaday/master/css/pikaday.css" rel="stylesheet"/>
<script src="https://rawgit.com/dbushell/Pikaday/master/pikaday.js"></script>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<h1>2018 year is selcted even though year range is [1968, 2005]</h1>
<input id="calendar" type="text" value=""></input>

Ответы [ 2 ]

0 голосов
/ 27 июня 2018

Используйте defaultDate, как показано во фрагменте. defaultDate установит календарь на указанную дату. setDefaultDate выберет и выделит данную дату.

$(function () {
    var field = $('#calendar')[0];
    var date = new Date(2005,0,1);

    var pika = new Pikaday({
        field: field,
        defaultDate:date,
        setDefaultDate: date,
        yearRange: [1968, 2005],
        onSelect: function () {
            console.log('selected');
        },
        onOpen: function () {
            console.log('open');
        },

        onClose: function () {
            console.log('closed');
        }
    });

});
<link href="https://rawgit.com/dbushell/Pikaday/master/css/pikaday.css" rel="stylesheet"/>
<script src="https://rawgit.com/dbushell/Pikaday/master/pikaday.js"></script>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<h1>2018 year is selcted even though year range is [1968, 2005]</h1>
<input id="calendar" type="text" value=""></input>
0 голосов
/ 27 июня 2018

Попробуйте установить его на 2005 при открытии:

onOpen: function () {
    this.gotoYear(2005);
},

http://jsfiddle.net/ms97uved/

...