Итак, я бы посоветовал следующий пример:
var cl = "en";
$(function() {
var drp = $("#search-vac-daterange").daterangepicker({
datepickerOptions: $.extend({
minDate: new Date(),
startDate: new Date(),
maxDate: '+2y'
}, $.datepicker.regional[cl])
});
var cdrp = drp.data("comiseoDaterangepicker");
console.log(drp, cdrp);
});
Рабочий пример: https://jsfiddle.net/Twisty/c5db9rng/20/
Так что это добавляет локализацию. Если мы рассмотрим шаги в примере DatePicker, они советуют сделать следующее:
$( selector ).datepicker( $.datepicker.regional[ "fr" ] );
Или:
$( selector ).datepicker( "option", $.datepicker.regional[ "fr" ] );
Каждая локализация содержится в своем собственном файле с кодом языка, добавленным к имени, например, jquery.ui.datepicker-fr.js
для французского языка. Нужный файл локализации должен быть включен после основного кода DatePicker. Каждый файл локализации добавляет свои параметры к набору доступных локализаций и автоматически применяет их как значения по умолчанию для всех экземпляров. Файлы локализации можно найти по адресу https://github.com/jquery/jquery-ui/tree/master/ui/i18n.
Так что это также важно знать. Поэтому для вашего кода я бы посоветовал следующее.
$(function() {
switch (curr_lang) {
case 'nl':
moment.locale('nl');
var daterangepicker = $("#search-vac-daterange").daterangepicker({
initialText: 'Selecteer datums',
dateFormat: 'd MM yy',
datepickerOptions: $.extend({
minDate: new Date(),
startDate: new Date(),
maxDate: '+2y'
}, $.datepicker.regional[curr_lang]),
presetRanges: [{
text: 'Vandaag',
dateStart: function() {
return moment()
},
dateEnd: function() {
return moment()
}
}, {
text: 'Volgende 7 dagen',
dateStart: function() {
return moment()
},
dateEnd: function() {
return moment().add(7, 'days')
}
}, {
text: 'Volgende 30 dagen',
dateStart: function() {
return moment()
},
dateEnd: function() {
return moment().add(30, 'days')
}
}, {
text: 'Volgende 6 maanden',
dateStart: function() {
return moment()
},
dateEnd: function() {
return moment().add(6, 'months')
}
}, {
text: 'Volgend jaar',
dateStart: function() {
return moment()
},
dateEnd: function() {
return moment().add(1, 'years')
}
}]
});
break;
}
});
Пример полуобработки: https://jsfiddle.net/Twisty/c5db9rng/24/
В примере нет языкового файла, поэтому он не даст правильных результатов, но код работает должным образом.
Надеюсь, это поможет.