gpt4 book ai didi

javascript - DataTables按属性而不是数组索引过滤对象数组

转载 作者:行者123 更新时间:2023-11-30 05:51:58 26 4
gpt4 key购买 nike

我想创建一个可以应用于多个数据表的日期范围过滤器。我遇到的问题是即使我过去了在我的 aaData 值中作为一个对象数组,当我到达过滤器函数时它在一个数组中。这是行不通的,因为数组中日期值的索引在我的应用程序中的各种数据表中是不同的,我更愿意能够通过像这样的属性上的点符号来完成它。

$.fn.dataTableExt.afnFiltering.push(
function( oSettings, aData, iDataIndex ) {
var iMin = document.getElementById('start-datepicker').value;
var iMax = document.getElementById('end-datepicker').value;

// Create Minimum Date Object
var iMinDate = new Date(iMin);

// Create Maximum Date Object
var iMaxDate = new Date(iMax);

// Create Date Column Object
var iDateStr = aData.date;
var iDate = new Date(iDateStr);

if ( iMinDate < iDate && iDate < iMaxDate )
{
return true;
}
return false;
}
);

我的初始化类似于这个http://live.datatables.net/iyavud/7/edit#source

最佳答案

这可能是一个 hack,但它似乎可以通过 oSettings.aoData 对象和 iDataIndex 参数获取数据。

$.fn.dataTableExt.afnFiltering.push(
function( oSettings, aData, iDataIndex ) {
var iMin = document.getElementById('start-datepicker').value;
var iMax = document.getElementById('end-datepicker').value;

// Create Minimum Date Object
var iMinDate = new Date(iMin);

// Create Maximum Date Object
var iMaxDate = new Date(iMax);

// Create Date Column Object
var rowData = oSettings.aoData[iDataIndex]._aData;
var iDateStr = rowData.date;
var iDate = new Date(iDateStr);

if ( iMinDate < iDate && iDate < iMaxDate )
{
return true;
}
return false;
}
);

关于javascript - DataTables按属性而不是数组索引过滤对象数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14163565/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com