Javascript 过滤空白单元格上的数据
我正在寻找一种从网格中筛选空细胞数据的方法,我已经实现了排序,我能够在一个地方得到所有的空白单元格,但是如果在空白单元格上进行任何类型的过滤都是很好的。 我的想法(理论上)是,如果我们可以用某种表达式映射空单元格,例如{blank}{`},任何类似的东西,那么过滤可能是可能的。但我不知道如何实现这一点Javascript 过滤空白单元格上的数据,javascript,full-text-search,slickgrid,Javascript,Full Text Search,Slickgrid,我正在寻找一种从网格中筛选空细胞数据的方法,我已经实现了排序,我能够在一个地方得到所有的空白单元格,但是如果在空白单元格上进行任何类型的过滤都是很好的。 我的想法(理论上)是,如果我们可以用某种表达式映射空单元格,例如{blank}{`},任何类似的东西,那么过滤可能是可能的。但我不知道如何实现这一点 function filter(item) { for (var columnId in columnFilters) {
function filter(item) {
for (var columnId in columnFilters) {
if (columnId !== undefined && columnFilters[columnId] !== "") {
var c = grid.getColumns()[grid.getColumnIndex(columnId)];
if (item[c.field] !== undefined)
{
if (item[c.field].toString().toLowerCase().search(columnFilters[columnId].toLowerCase()) === -1) {
return false;
}
} else if(columnFilters[columnId] === "#blank")
{
return true;
} else
return false;
}
}
return true;
}
添加此行“else if(columnFilters[columnId]==”@“{return c;}”
给我所有的空白单元格(没有任何数据),单元格属性=“未定义”。通过在搜索框中键入“@”,所有空白单元格都会被过滤。 您是否研究过使用dataView的过滤函数?请看,正常的筛选工作完全正常,要求是对空白单元格进行筛选,我尝试将{--}分配给未定义的单元格,现在空白单元格正在输入
{
,但从搜索中删除此项时,整个表不会返回,它只会被包含空白单元格的行卡住。“空白”是什么意思在数据模型中的外观?(即行上的属性)?您可能需要使用类似于typeof row.prop!=“undefined”&&row.prop!=null
或类似的筛选器。@Edward感谢您的建议,我知道在空白单元格上进行筛选有点像有线问题。我的数据模型中的空白单元格是表中的空白单元格。筛选器不关心它的外观(格式化程序如何呈现“blank”),过滤器查看的是它在filter方法中可以访问的数据属性。我实际上已经这样做了好几次,所以我想知道在您的设置中缺少什么。您可以添加一行和filter
方法的示例吗?