Я использую Laravel 5.4 и начинаю использовать [Date Range Picker] Дэна Гроссмана 1 , чтобы выбрать две даты, тогда запрос Ajax получит ответ позже с результатами, которые будут отображаться в Yajra DataTable .
Сторона Ajax работает хорошо, я уже тестировал ее, и она работает хорошо.но теперь моя проблема начинается после использования Datepicker, где результаты, показанные в первый раз, выглядят правильно и выглядят работающими, но когда я выбираю и выбираю дату, затем нажимаю кнопку «Отправить» в поиске, она сохраняет те же данные раньше, что означает, что Ajax не работает с новымиМогу ли я узнать причину и как ее исправить, чтобы данные, отправленные по запросу AJAX, работали хорошо.
HTML-код:
<div id="reportrange"
style="background: #fff; cursor: pointer; padding: 5px 10px; border: 1px solid #ccc; width: 100%">
<i class="fa fa-calendar"></i>
<span></span> <i class="fa fa-caret-down"></i>
</div>
<input type="submit" id="search_leads" name="search" value="search" class="btn btn-primary">
Код Jquery:
$(document).ready(function () {
$(function () {
var start = moment().subtract(15, 'days');
var end = moment();
function cb(start, end) {
$('#reportrange span').html(start.format('MMMM D, YYYY') + ' - ' + end.format('MMMM D, YYYY'));
}
$('#reportrange').daterangepicker({
startDate: start,
endDate: end,
ranges: {
'Today': [moment(), moment()],
'Yesterday': [moment().subtract(1, 'days'), moment().subtract(1, 'days')],
'Last 7 Days': [moment().subtract(6, 'days'), moment()],
'Last 30 Days': [moment().subtract(29, 'days'), moment()],
'This Month': [moment().startOf('month'), moment().endOf('month')],
'Last Month': [moment().subtract(1, 'month').startOf('month'), moment().subtract(1, 'month').endOf('month')]
}
}, cb);
cb(start, end);
// alert(start.format('YYYY-M-DD hh:mm:ss') + end.format('YYYY-M-DD hh:mm:ss'));
var allUsersTable = $('.allleads').DataTable({
processing: true,
serverSide: true,
// "bSort": false,
ajax: {
url: "{{ url('lead/GetAllLeads') }}",
data: function (d) {
d.level = $('#levelFilter').val(),
d.start_time = start.format('YYYY-M-DD hh:mm:ss'),
d.end_time = end.format('YYYY-M-DD hh:mm:ss')
}
},
{{--"ajax": "{{ url('lead/GetAllLeads') }}",--}}
// "data": level = $('#levelFilter').val(),
columns: [
{"data": "lead", "name": "lead"},
{"data": "email", "name": "email"},
dom: 'Bfrtip',
buttons: [
'copy', 'csv', 'excel', 'pdf', 'print'
]
});
$("#search_leads").click(function () {
allUsersTable.draw();
});
});
`