我在一些HTML表格中使用jQuery DataTables。好吧,我有一个页面,我列出了SERral表,我必须通过相同的过滤器过滤所有这些表。在这种情况下是我定制的日期范围。
所有表都使用相同的css类来构建dataTable,并使用我在
处的日期范围进行搜索$.fn.dataTableExt.afnFiltering.push(fn).
我还有另一个文字搜索,使用
$('.dataTable').dataTable().fnFilter(
searchVal,
4,
false,
true
);
这个也只在一张桌子上工作,而不是像我期望的那样。
谢谢,
答案 0 :(得分:1)
显示详细信息过滤特定日期范围内的列。 请注意,您可能需要更改输入以及存在开始日期和结束日期的列的ID 。
$.fn.dataTableExt.afnFiltering.push(
function( oSettings, aData, iDataIndex ) {
var iFini = document.getElementById('fini').value;
var iFfin = document.getElementById('ffin').value;
var iStartDateCol = 6;
var iEndDateCol = 7;
iFini=iFini.substring(6,10) + iFini.substring(3,5)+ iFini.substring(0,2)
iFfin=iFfin.substring(6,10) + iFfin.substring(3,5)+ iFfin.substring(0,2)
var datofini=aData[iStartDateCol].substring(6,10) + aData[iStartDateCol].substring(3,5)+ aData[iStartDateCol].substring(0,2);
var datoffin=aData[iEndDateCol].substring(6,10) + aData[iEndDateCol].substring(3,5)+ aData[iEndDateCol].substring(0,2);
if ( iFini == "" && iFfin == "" )
{
return true;
}
else if ( iFini <= datofini && iFfin == "")
{
return true;
}
else if ( iFfin >= datoffin && iFini == "")
{
return true;
}
else if (iFini <= datofini && iFfin >= datoffin)
{
return true;
}
return false;
});
也
范围过滤(数字) 过滤两个给定数字之间的值的特定数字列。 请注意,您可能需要更改输入和列上的ID ,其中数值是给出。