繁体   English   中英

jQuery DataTable日期范围搜索

[英]jQuery DataTable Date Range Search

我试图为jQuery DataTable添加日期范围搜索。 日期范围过滤器工作正常,所有列/行的正常搜索也正常工作。

我的问题是,表(事件)的刷新仅在正常搜索中的更改之后执行。 所以我需要一个重新绘制/重绘/更新表的事件。

所以我需要调用像数据表刷新的东西。

这是我目前的代码:

window.onload = function () {
    $(document).ready(function () {
        try {
            var table = $('#MainContent_gridClaim').dataTable();
        } catch (Err) { };
    });

    $('.datepicker').pickadate({
        selectMonths: true, // Creates a dropdown to control month
        selectYears: 15 // Creates a dropdown of 15 years to control year
    });
};


$.fn.dataTable.ext.afnFiltering.push(function (settings, data, indx) {
    //Min Max Document
    var min = document.getElementById("min").value;
    var max = document.getElementById("max").value;
    if (min === "" || max === "") {
        return true;
    }

    //Res Min Max
    var resMin = min.split(".");
    var resMax = max.split(".");

    //Min Max Date
    var dMin = new Date(resMin[2],resMin[1],resMin[0],0,0,0,0);
    var dMax = new Date(resMax[2],resMax[1],resMax[0],0,0,0,0);

    var resData = data[5].split(".");
    var resYear = resData[2].split(" ");
    var dJet = new Date(resYear[0], resData[1], resData[0], 0, 0, 0, 0);

    var minSec = dMin.getTime();
    var maxSec = dMax.getTime();
    var actualSec = dJet.getTime();

    if (minSec<=actualSec&&actualSec<=maxSec) {
        return true;
    } else {
        return false;
    }

});

你需要打电话

$('#MainContent_gridClaim').dataTable().draw();

当您更改日期范围时。 我不知道您的日期选择器插件,但您需要将dataTable.draw()调用添加到类似于onChange之类的内容中。

有一个类似的例子https://datatables.net/examples/plug-ins/range_filtering.html

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM