Stack Overflow en español Asked on February 10, 2021
Estoy usando DateRangePicker, necesitaría ayuda encontrar un modo de cambiar ‘minDays’ después de seleccionar la primera fecha del rango.
$('.mdaterange').dateRangePicker({
...
minDays: 2,
...
}).bind('datepicker-first-date-selected', function(event, obj) {
//change here or similar to minDays: 5
});
Lamentablemente el API que ofrece ese plug-in está demasiado limitado. Por lo tanto la única solución que pude encontrar fue modificar directamente el script original jquery.daterangepicker.js
.
En la línea 986 podrás encontrar la sección donde definen el API del plug-in.
Como ya sabrás, los métodos que ofrece su API de manera predeterminada son: setStart, setEnd, setDateRange, clear, close, open, redraw, getDatePicker, resetMonthsView y destroy
Te comparto el fragmento de código que tuve que agregar (yo elegí incluirlo entre los métodos setDateRange y clear, pero tú lo puedes poner donde gustes):
setMinDays: function(mDays) {
if (typeof mDays == 'number') {
opt.minDays = mDays;
}
}
Entonces, para cambiar el valor de la propiedad minDays se haría de la siguiente manera:
$('.mdaterange').data('dateRangePicker').setMinDays(5);
Por lo tanto, aplicándolo a tu fragmento de código, quedaría así:
$('.mdaterange').dateRangePicker({
minDays: 2
}).bind('datepicker-first-date-selected', function(event, obj) {
//change here or similar to minDays: 5
$('.mdaterange').data('dateRangePicker').setMinDays(5);
});
Y aquí te comparto un ejemplo funcional: jsFiddle
Answered by Sagnalrac on February 10, 2021
Get help from others!
Recent Questions
Recent Answers
© 2024 TransWikia.com. All rights reserved. Sites we Love: PCI Database, UKBizDB, Menu Kuliner, Sharing RPP