#javascript #ajax #laravel #daterangepicker #bootstrap-daterangepicker
Вопрос:
Я использую фреймворк Laravel. Я хочу создать фильтр диапазона дат с помощью ajax. но у меня есть проблема с даторанжировщиком, который я использую
таково мое мнение
это код поля
<input type="text" class="form-control filter" id="filter-date">
это код javascript для вызова daterangepicker
$(function () {
//Date range picker
$('#filter-date').daterangepicker({
autoUpdateInput: true,
locale: {
cancelLabel: 'Clear'
}
});
$('#filter-date').on('apply.daterangepicker', function(ev, picker) {
$(this).val(picker.startDate.format('YYYY/MM/DD') ' - ' picker.endDate.format('YYYY/MM/DD'));
});
$('#filter-date').on('cancel.daterangepicker', function(ev, picker) {
$(this).val('');
});
})
Это код javascript для хранения значения daterangepicker перед отправкой его контроллеру с помощью ajax. (размещено в переменном фильтре даты)
let datefilter = $("#filter-date").val()
$(".filter").on('change',function(){
datefilter = $("#filter-date").val()
console.log(datefilter)
table.ajax.reload(null,false)
})
Когда я использую приведенный выше код и console.log(фильтр данных), значение в фильтре данных вводится напрямую, то есть сегодня. но я хочу, чтобы первое значение или значение по умолчанию было равно нулю.
Мне удалось изменить значение по умолчанию на null с помощью autoUpdateInput: false. но после того, как я заполняю дату, которую я хочу отправить, значение фильтра даты всегда равно нулю.
Есть ли какой-либо другой способ, чтобы значение по умолчанию было равно нулю, но с использованием метода autoUpdateInput: false?