Как увеличить количество заранее определенных диапазонов дат?

  • У меня есть такое средство выбора диапазона дат. Я пытаюсь поставить больше предопределенных диапазонов. Теперь есть 6 предопределенных диапазонов (сегодня, вчера, последние 7 дней, последние 30 дней, в этом месяце, в прошлом месяце).
  • Мне нужно добавить больше предопределенных диапазонов, таких как прошлый год, последние 10 лет ... Но когда я пытаюсь добавить больше к параметру диапазонов, это не работает. Как мне добавить больше предопределенных диапазонов?

<script type="text/javascript">
$(function() {

    var start = moment().subtract(29, '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);

});
</script>
<script type="text/javascript" src="https://cdn.jsdelivr.net/jquery/latest/jquery.min.js"></script>
<script type="text/javascript" src="https://cdn.jsdelivr.net/momentjs/latest/moment.min.js"></script>
<script type="text/javascript" src="https://cdn.jsdelivr.net/npm/daterangepicker/daterangepicker.min.js"></script>
<link rel="stylesheet" type="text/css" href="https://cdn.jsdelivr.net/npm/daterangepicker/daterangepicker.css" />

<div id="reportrange" style="background: #fff; cursor: pointer; padding: 5px 10px; border: 1px solid #ccc; width: 100%">
    <i class="fa fa-calendar"></i>&nbsp;
    <span></span> <i class="fa fa-caret-down"></i>
</div


person loxiiiihere    schedule 19.01.2021    source источник
comment
Так клиенты смогут создать новый предопределенный селектор диапазона, или вы?   -  person Hùng H. - UIT    schedule 19.01.2021
comment
Я буду создавать, но после 6 не могу творить. Я просто хочу добавить больше предопределенных значений к параметру диапазонов.   -  person loxiiiihere    schedule 19.01.2021
comment
Хорошо, теперь это просто начало волшебным образом работать. Вам просто нужно добавить больше параметров в массив диапазонов.   -  person loxiiiihere    schedule 19.01.2021


Ответы (1)


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')],
 'This Month': [moment().startOf('month'), moment().endOf('month')],
           'Last Month': [moment().subtract(1, 'month').startOf('month'), moment().subtract(1, 'month').endOf('month')]
        }
  • Этого достаточно, чтобы увеличить параметры
person loxiiiihere    schedule 19.01.2021