【问题标题】:Change format of Date Range Picker更改日期范围选择器的格式
【发布时间】:2017-03-10 07:13:43
【问题描述】:

我遇到了一个问题,我想更改日期范围选择器的日期格式,我尝试修复所有格式并且它可以工作,但唯一留下的问题是打开日期范围窗口时并在不点击 ApplyCancel 按钮的情况下关闭它它会自动以/ 分隔格式更改日期,有没有办法将其设置为与 YYYY 相同的格式-MM-DD

这是我的 Js 代码

$(function() {
    var start = moment().subtract(29, 'days');
    var end = moment();
    function cb(start, end) {
        $('input[name="datefilter"]').val(start.format('YYYY-MM-DD') + ' TO ' + end.format('YYYY-MM-DD'));
    }

    $('input[name="datefilter"]').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);

});
  $('input[name="datefilter"]').on('apply.daterangepicker', function(ev, picker) {
      $(this).val(picker.startDate.format('YYYY-MM-DD') + ' TO ' + picker.endDate.format('YYYY-MM-DD'));
  });
    $('input[name="datefilter"]').on('cancel.daterangepicker', function(ev, picker) {
      $(this).val(start.format('YYYY-MM-DD') + ' TO ' + end.format('YYYY-MM-DD'));
  });

【问题讨论】:

标签: javascript jquery date


【解决方案1】:

尝试:

$('input[name="datefilter"]').daterangepicker({
    startDate: start,
    locale: {
        format: 'YYYY-MM-DD' // --------Here
    },
    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);

【讨论】:

  • 工作了,谢谢,但我想把 TO 放在两个日期之间,例如2017-03-01 至 2017-03-10 而不是 2017-03-01 - 2017-03-10
  • 我通过添加 separator: ' TO ' 来修复它
【解决方案2】:
$('input[name="datefilter"]').daterangepicker({   
    locale: {
        format: 'YYYY-MM-DD'
    }
    ...

【讨论】:

    【解决方案3】:
    var mystring = "2017/03/10";
    var res = mystring.replace(/\\//g , "-");
    

    输出:

    2017-03-10

    【讨论】:

      猜你喜欢
      • 2015-12-24
      • 2020-11-29
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-10-25
      • 1970-01-01
      • 1970-01-01
      • 2017-06-25
      相关资源
      最近更新 更多