DatePicker:我正在创建一个cookie系统来保留日期,但无法在下拉菜单中设置正确的信息

问题描述 投票:0回答:1

如标题中所述,我的cookie系统正在按预期方式工作,除非要在下拉菜单中显示cookie中的数据。

[当没有cookie且用户到达报告页面时,所有的日子都设置为NaN,如下所示。

enter image description here

在控制台中,我得到了他的错误,可能是因为日期格式不正确,但是我无法弄清楚。这只是问题的一部分。

错误:属性转换:期望的数字,“ scale(NaN)translation(N…”。

通过在自定义值中选择“昨天”,日期将返回,并且下拉列表将再次起作用。现在选择了日期范围,将创建cookie。接下来,当用户刷新页面时,将为cookie中的日期加载报告,但NaN返回,并且返回日期为今天,而不是cookie中的日期。

enter image description here

这是我的代码。任何帮助将不胜感激。

$(document).ready(function(){
    function showReport(todaydate) {
        $.ajax({
            url:"campaign-table.php",
            method:"POST",
            data:{todaydate:todaydate},
            success:function(data){
                $('#campaigntable').html(data);
            }
        });
    }

    if (Cookies.get('startdate') == null || Cookies.get('enddate') == null) {
        Cookies.set('startdate', (new Date()).toISOString().split('T')[0]);
        Cookies.set('enddate', (new Date()).toISOString().split('T')[0]);
    }

    var todaydate = Cookies.get('startdate') + "to" + Cookies.get('enddate');

    showReport(todaydate);

    $('#demo').daterangepicker({
        "timePicker24Hour": true,
        "autoApply": true,
        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')]
        },
        "alwaysShowCalendars": true,
        "startDate": Cookies.get('startdate'),
        "endDate": Cookies.get('enddate'),
        "opens": "left",
    }, function(start, end, label) {
        $("#datereturn").text(start.format('MMMM D, YYYY') + ' to ' + end.format('MMMM D, YYYY'));
        var todaydate = start.format('YYYY-MM-DD')+"to"+end.format('YYYY-MM-DD');
        Cookies.set('startdate', start.format('YYYY-MM-DD'));
        Cookies.set('enddate', end.format('YYYY-MM-DD'));
        showReport(todaydate);
    });
});
jquery cookies jquery-ui-datepicker
1个回答
0
投票
© www.soinside.com 2019 - 2024. All rights reserved.