Bootstrap DateRangePicker в настройках диапазона

Я знаю, что могу использовать locale настройки для определения языка плагина Bootstrap DateRangePicker, хотя я не могу понять, как определить язык для range установка.

$('#my-calendar').daterangepicker(
{
  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')]
  }
}

Я хотел бы изменить today, yesterdayи т. д. на определенный язык. Поэтому я безуспешно пытался

var lang = JSON.parse($('#lang').val());
/*
 * lang[0] = 'Today'
 * lang[1] = 'Yesterday'
 * lang[2] = 'Last 7 days'
 * lang[3] = 'Last 30 days'
 * lang[4] = 'This month'
 */
$('#my-calendar').daterangepicker(
{
  ranges: 
  {
     lang[0]: [moment(), moment()],
     lang[1]: [moment().subtract(1, 'days'), moment().subtract(1, 'days')],
     lang[2]: [moment().subtract(6, 'days'), moment()],
     lang[3]: [moment().subtract(29, 'days'), moment()],
     lang[4]: [moment().startOf('month'), moment().endOf('month')]
  }
}

Но это возвращает ошибку Uncaught SyntaxError: Unexpected token [ в каждом lang[number] линия.

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

1 ответ

Решение

Решено не модным способом.

По сути, плагин DateRangePicker создает div, который содержит список с Today, Yesterday, так далее.

<div class="ranges">
    <ul>
        <li>Today</li>
        <li>Yesterday</li>
    </ul>
</div>

Поэтому после завершения инициализации плагина я изменяю textиз li вручную.

$('.ranges ul li').eq(0).text(lang[0]);
$('.ranges ul li').eq(1).text(lang[1]);
Другие вопросы по тегам