jQuery每次都会显示随机记录

时间:2014-04-04 07:52:44

标签: jquery

我正在从两个日期之间的excel文件中检索按,所有,每周,每月和每年过滤的数据。默认情况下,我希望它显示“所有记录”,但不知何故,它会在每次访问或刷新页面时显示随机数据,即有时每周,每月或每年。是否可以默认拥有所有记录?我不知道它为什么一直显示随机数据。

标签是锚链接: [全部] [上周] [上个月] [去年]

这是我的jQuery代码:

    // All
    ////////////////////////////////////////////////////////////////////////////////////////////////////

    var todayDate = new Date();
    var endDate = todayDate.getDate() + '/' + (todayDate.getMonth() + 1) + '/' + (todayDate.getFullYear() + 100);
    var d = new Date();
    var st = d.setDate(todayDate.getDate() - 111365);
    var startDate = d.getDate() + '/' + (d.getMonth() + 1) + '/' + d.getFullYear();
    $('#allrecordsstart').val(startDate);
    $('#allrecordsend').val(endDate);
    $('#TopPlayedInVenueContainer1').jtable('load', {
        StartDate: startDate,
        EndDate: endDate
    });

    $('#allrecords').click(function (e) {
        e.preventDefault();
        var startDate = $('#allrecordsstart').val();
        var endDate = $('#allrecordsend').val();

        $('#TopPlayedInVenueContainer1').jtable('load', {
            StartDate: startDate,
            EndDate: endDate

        });

    });

    // Week
    ////////////////////////////////////////////////////////////////////////////////////////////////////

    var todayDate = new Date();
    var endDate = todayDate.getDate() + '/' + (todayDate.getMonth() + 1) + '/' + todayDate.getFullYear();
    var d = new Date();
    var st = d.setDate(todayDate.getDate() - 7);
    var startDate = d.getDate() + '/' + (d.getMonth() + 1) + '/' + d.getFullYear();
    $('#lastWeekstart').val(startDate);
    $('#lastWeekend').val(endDate);

    $('#lastWeek').click(function (e) {
        e.preventDefault();
        var startDate = $('#lastWeekstart').val();
        var endDate = $('#lastWeekend').val();

        $('#TopPlayedInVenueContainer1').jtable('load', {
            StartDate: startDate,
            EndDate: endDate

        });

    });

    ////////////////////////////////////////////////////////////////////////////////////////////////////

    // Month
    ////////////////////////////////////////////////////////////////////////////////////////////////////

    var todayDate = new Date();
    var endDate = todayDate.getDate() + '/' + (todayDate.getMonth() + 1) + '/' + todayDate.getFullYear();
    var d = new Date();
    var st = d.setDate(todayDate.getDate() - 30);
    var startDate = d.getDate() + '/' + (d.getMonth() + 1) + '/' + d.getFullYear();
    $('#monthstart').val(startDate);
    $('#monthend').val(endDate);

    $('#lastMonth').click(function (e) {
        e.preventDefault();
        var startDate = $('#monthstart').val();
        var endDate = $('#monthend').val();

        $('#TopPlayedInVenueContainer1').jtable('load', {
            StartDate: startDate,
            EndDate: endDate

        });

    });

    ////////////////////////////////////////////////////////////////////////////////////////////////////

    // Year
    ////////////////////////////////////////////////////////////////////////////////////////////////////

    var todayDate = new Date();
    var endDate = todayDate.getDate() + '/' + (todayDate.getMonth() + 1) + '/' + todayDate.getFullYear();
    var d = new Date();
    var st = d.setDate(todayDate.getDate() - 365);
    var startDate = d.getDate() + '/' + (d.getMonth() + 1) + '/' + d.getFullYear();
    $('#yearstart').val(startDate);
    $('#yearend').val(endDate);

    $('#lastYear').click(function (e) {
        e.preventDefault();
        var startDate = $('#yearstart').val();
        var endDate = $('#yearend').val();

        $('#TopPlayedInVenueContainer1').jtable('load', {
            StartDate: startDate,
            EndDate: endDate

        });

    });

    ////////////////////////////////////////////////////////////////////////////////////////////////////

1 个答案:

答案 0 :(得分:1)

在页面加载时,您似乎会触发4个不同的.jtable('load', ...)调用 - 每个列表一个:

// this is called on page load :
$('#TopPlayedInVenueContainer1').jtable('load', {
    StartDate: startDate,
    EndDate: endDate
});

$('#lastMonth').click(function (e) {
    e.preventDefault();
    var startDate = $('#monthstart').val();
    var endDate = $('#monthend').val();

    // this is called when clicking on #lastMonth :
    $('#TopPlayedInVenueContainer1').jtable('load', {
        StartDate: startDate,
        EndDate: endDate

    });

});

删除无用的调用:在页面加载时,如果要加载"All records"列表,请加载该列表,然后删除其他三个。


要检查的其他要点:

  • 打开浏览器控制台,查看发送到服务器的请求。寻找不需要的请求(查找可以在您的javascript代码中触发它们的地方)

  • 在网络选项卡中,检查服务器是否回答了正确的数据。如果没有,您将必须调试服务器端代码(< - PHP / ruby​​ / python / ASP.net ...)