更改日期范围选择器的格式

时间:2017-03-10 07:13:43

标签: javascript jquery date

我遇到一个问题,我想更改日期范围选择器的日期格式,我试图修复所有格式并且它可以正常工作,但唯一的问题是当你打开日期范围窗口时并关闭它而不点击应用取消按钮,它会自动更改/分隔格式的日期,有没有办法以相同的格式设置它,如 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'));
  });

3 个答案:

答案 0 :(得分:3)

尝试:

$('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);

答案 1 :(得分:0)

var mystring = "2017/03/10";
var res = mystring.replace(/\\//g , "-");

输出:

  

2017年3月10日

答案 2 :(得分:0)

$('input[name="datefilter"]').daterangepicker({   
    locale: {
        format: 'YYYY-MM-DD'
    }
    ...