2012-05-01 3 views
3

Использую this date picker. Мне нужно, чтобы вход был пуст при загрузке страницы, но установите значение по умолчанию на сегодняшний день на datepicke popap. Теперь, когда я jast пишут:JQuery datepicker set defaultvalue

$(".dp").datepicker({ 
       format: 'dd.mm.yyyy', 
       startDate: '01.01.2012', 
       endDate: '' 
});; 

Это первый январь 1970 года по умолчанию при всплывании datapicker. Как изменить значение по умолчанию?

+0

Поскольку это не вариант для этого плагина, и получение его на работу потребует какого-то взлома, почему бы не использовать jQuery UI datepicker, который имеет это в качестве опции? – j08691

ответ

7

Вы можете сделать это с мероприятия show, но я должен сказать, что документации датпикера действительно не хватает. Вот как:

(function() { 

    $(".dp").datepicker({ 
    format: 'dd.mm.yyyy', 
    startDate: '01.01.2012', 
    endDate: '' 
    }).on("show", function() { 
    $(this).val("01.05.2012").datepicker('update'); 
    }); 

})(); 

Естественно, где у меня есть 01.05.2012, поставить текущую дату.

+3

это не работает для меня :( – knocte

+0

@knocte: Это работает отлично. Если бы вы посмотрели в консоль, на которой был показан живой пример, вы бы видели, что именно в год с момента создания этого примера, ссылки на bootstrap были сгнили, я обновил их сейчас. –

+0

не работает для меня ни – Walllzzz

-3

В бутстраповских-datepicker.js (~ Line 331) изменение:

date = new Date(1971, 1, 1, 0, 0, 0), 

в

date = new Date(), 
+2

Вы должны быть очень осторожным в редактировании в библиотеке, когда есть более чистый способ получить поведение снаружи (см. принятый ответ). –

+0

Это очень опасный путь, так как вы изменение самих фреймворков –

5

быстро, но работает

var myDate = new Date(); 
    var date = myDate.getFullYear() + '-' + ('0'+ myDate.getMonth()+1).slice(-2) + '-' + ('0'+ myDate.getDate()).slice(-2); 
    $("#datepicker").val(date);