it-swarm.com.ru

Установите сегодняшнюю дату в качестве даты по умолчанию в jQuery UI datepicker

Я просто хочу, чтобы сегодняшняя дата была значением по умолчанию во входных данных, использующих пользовательский интерфейс jQuery datepicker:

<input id="mydate" type="text" />

Я попробовал приведенный ниже код, но он не работал:

var currentDate = new Date();  
$("#mydate").datepicker("setDate",currentDate);
60
Chris Abrams

Вам нужно сделать вызов setDate отдельно от вызова инициализации. Итак, чтобы создать DatePicker и установить дату за один раз:

$("#mydate").datepicker().datepicker("setDate", new Date());

Почему это так, я не знаю. Если бы кто-то сделал, это была бы интересная информация.

88
Martin Eden

Вы должны инициализировать datepicker перед вызовом datepicker-

Вот 

Рабочая JSFiddle .


$("#mydate").datepicker().datepicker("setDate", new Date());
//-initialization--^          ^-- method invokation
<link href="https://code.jquery.com/ui/1.9.2/themes/base/jquery-ui.css" rel="stylesheet" />
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<script src="https://code.jquery.com/ui/1.9.2/jquery-ui.js"></script>
<input type="text" id="mydate" />


P.S .: Предполагается, что на вашем компьютере установлена ​​правильная дата 

74
T J

Это очень просто, вы просто добавляете этот скрипт,

$("#mydate").datepicker({ dateFormat: "yy-mm-dd"}).datepicker("setDate", new Date());

Здесь setDate устанавливает сегодняшнюю дату, дату и формат определяют, какой формат вы хотите установить или показать.

Надеюсь, что его простой сценарий работы ..

21
rjony
$("#date").datepicker.regional[""].dateFormat = 'dd/mm/yy';
$("#date").datepicker("setDate", new Date());

Всегда работай на меня 

5
Ashisha Nautiyal

Это работает для меня, сначала вы привязываете DatePicker к текстовому полю и в следующей строке установите (сегодня как дата по умолчанию) дату для него 

$("#date").datepicker();

$("#date").datepicker("setDate", new Date());
4
Usman Younas

Примечание. Когда вы передаете setDate, вы вызываете метод, который предполагает, что средство выбора даты уже инициализировано для этого объекта.

$(function() {    
   $('#date').datepicker();
   $('#date').datepicker('setDate', '04/23/2014');
});

Тест: http://jsfiddle.net/wimarbueno/hQkec/1/

3
Wilzon

Это сработало для меня, а также локализовало это:

$.datepicker.setDefaults( $.datepicker.regional[ "fr" ] );
$(function() {
   $( "#txtDespatchDate" ).datepicker( );
   $( "#txtDespatchDate" ).datepicker( "option", "dateFormat", "dd/mm/yy" );
   $('#txtDespatchDate').datepicker('setDate', new Date());
});
2
Jan

Установить дату по умолчанию при инициализации:

$("#date").datepicker({
    defaultDate: '01/26/2014'
});
2
Morten Holmgaard

Просто установите minDate: 0

Вот мой сценарий:

$("#valid_from")
   .datepicker({
     minDate: 0,
     defaultDate: "+1w",
     changeMonth: true,
     numberOfMonths: 3
})
1
Mike Nguyen

Я пробовал много способов и придумал свое собственное решение, которое работает абсолютно по мере необходимости.

«mydate» - это идентификатор элемента ввода/элемента управления datepicker.

        $(document).ready(function () {

        var dateNewFormat, onlyDate, today = new Date();

        dateNewFormat = today.getFullYear() + '-' + (today.getMonth() + 1);

        onlyDate = today.getDate();

        if (onlyDate.toString().length == 2) {
            dateNewFormat += '-' + onlyDate;
        }
        else {
            dateNewFormat += '-0' + onlyDate;
        }
        $('#mydate').val(dateNewFormat);
    });
0
Radha Anil K

Вы не определили

$("#mydate").datepicker({});
0
Ashish Mehta

Попробуй это:

$('.datepicker').datepicker('update', new Date(year,month,day));
0
Abdo Bahhous