在数据处理的日常场景中,筛选功能是突破“信息过载”的关键利器。无论是从数百条员工信息中定位特定部门的在职人员,从千条销售记录里筛选出某季度的高客单订单,还是从复杂报表中提取符合多维度条件的数据,高效的筛选能力都能让工作效率翻倍。传统前端表格组件的筛选功能常存在操作繁琐、条件单一、多列筛选逻辑混乱、适配场景有限等问题,而智表ZCELL作为媲美Excel的前端表格插件,凭借其灵活、精准、高效的筛选能力,完美复刻Excel筛选体验,同时适配Web端复杂业务场景,让数据筛选从“耗时排查”变为“一键精准定位”。下面将按步骤演示,首先进行插件和数据源初始,我们按照10万行数据初始化。
一、插件初始化与数据源初始化
在演示之前,需要先做好插件和数据源初始化工作,具体步骤如下:
以下是具体代码示例:
- 初始化 zcell插件
//初始化ZCELL
var options = {
container: document.getElementById("zcell-container"),
};
zcell_io = new ZCell.WorkBook(options);
2. 初始化工作表,设置表头冻结,行数为10万行
//初始化SHEET
let sheetoption = {
name: "sheet01", //表格名
rowCount: 100000, //行数
colCount: 10, // 列数
showRowLab: 0, //行标签不显示
showColLab: 0, //列标签不显示
rowHSize: 30, //默认行高
colWSize: 100, //默认列宽
freezeTop: 0, //顶部冻结
showFreezeLine: 0, //冻结线不显示
};
sheet = zcell_io.AppendSheet(sheetoption);
3. 设置表头和样式,也可以不设置
//#region ------设置表头 文本和样式-----
sheet.SetCellValue(0, 0, "序号");
sheet.SetCellValue(0, 1, "人物");
sheet.SetCellValue(0, 2, "等级");
sheet.SetCellValue(0, 3, "特征1");
sheet.SetCellValue(0, 4, "特征2");
sheet.SetCellValue(0, 5, "特征3");
sheet.SetCellValue(0, 6, "特征4");
sheet.SetCellValue(0, 7, "特征5");
//表头样式
let headstyle1 = {
hAlign: "center",
fontBold: 1,
backColor: "#886600",
fontColor: "#FFFFFF",
};
sheet.SetCellStyle(0, 0, headstyle1);
sheet.SetCellStyle(0, 1, headstyle1);
sheet.SetCellStyle(0, 2, headstyle1);
sheet.SetCellStyle(0, 3, headstyle1);
sheet.SetCellStyle(0, 4, headstyle1);
sheet.SetCellStyle(0, 5, headstyle1);
sheet.SetCellStyle(0, 6, headstyle1);
sheet.SetCellStyle(0, 7, headstyle1);
//设置列宽
sheet.SetColWidth(3, 3, 200); //设置列宽
//#endregion ------设置表头 文本和样式-----
4. 准备数据集和数据源,并绑定到工作表
//准备数据集
var datas = [];
for (let i = 0; i < 100000; i++) {
let randv = getRandomInt(1, 4);
let sv;
if (randv == "1") sv = "甲等";
else if (randv == "2") sv = "乙等";
else if (randv == "3") sv = "丙等";
else if (randv == "4") sv = "丁等";
let item = {
rowno: "行号" + i,
person: "徒弟" + getRandomInt(1, 4),
status: sv,
lableval: i * 2 + 1,
lableval2: i * 2 + 2,
lableval3: i * 2 + 3,
lableval4: i * 2 + 4,
lableval5: i * 2 + 5,
};
datas.push(item);
}
//#region --------准备数据源--------
let option2 = {
name: "data1",
type: 1, //0- datacard,1是 datatable
data: datas,
startrow: 1, // datatable 式需要设置
startcol: "A", // datatable 式需要设置
autoBindColumn: true,
};
let ds = sheet.CreatDataSource(option2);
//绑定数据源
sheet.BindDataSource(ds);
数据加载后效果如下:
二、默认基础筛选:零门槛上手,秒速定位目标数据
智表ZCELL的默认基础筛选功能深度贴合用户的Excel操作习惯,无需复杂配置,通过一行代码调用API或可视化操作,即可快速实现文本、数字、日期等多类型数据的筛选。无论是精准匹配、包含匹配,还是区间筛选,都能轻松实现,让开发者快速集成,让使用者零学习成本上手。
代码实例如下:
//设置筛选区域
sheet.SetFilterArea(0, 0, 99999, 3); // 参数是起始行列和结束行列索引号
设置后,界面效果如下,在设置筛选区域的第一行,会出现筛选三角。
点击其中一列,即可弹出筛选框如下
筛选框默认加载所有值及项数,去掉不想显示的列表项前的复选框,即可显示筛选后的值,如下图所示,确定后1秒内即可完成数据筛选,从而快速显示用户目标数据。
支持在第一列过滤的基础上,再选定其他列进行过滤,实例如下:
智表ZCELL的默认筛选无需任何特殊配置,操作逻辑与Excel高度一致,用户无学习成本。
三、高级筛选:自定义筛选规则,适配特殊业务场景
除了默认基础筛选,实际业务中还会遇到特殊的筛选需求,例如筛选“订单金额是100的整数倍”“客户名称以某字符开头且长度大于5”“成绩在平均分以上”等场景,这些需求无法通过常规筛选条件实现。智表ZCELL支持自定义筛选函数,允许开发者根据业务逻辑编写专属筛选规则,突破常规筛选的限制,实现全场景适配。
示例场景:我现在需要过滤D列(特征1列)显示值介于50与75之间的数据,实现步骤如下:
- 自定义某列过滤函数,设置过滤参数值,是自定义筛选的核心
//自定义某列过滤函数,否则不需要设置,为null即可
let option = {
colinfo: [
{
filterindex: "D",
filterby: "fun", //指明该列过滤依据是函数自定义函数型
filterfun: function (sheetobj, row, col) {
//注意自定义函数 参数是固定的,包括工作表对象和单元格行列索引,且必须返回布尔型结果
//获取单元格显示值
let disval = sheetobj.GetCellDisValue(row, col);
//计算逻辑根据情况自定定义即可
if (disval > 50 && disval < 75) {
return true;
}
return false;
},
},
],
};
- 设置筛选数据范围,执行筛选动作,点击按钮,即可自动完成筛选动作
//设置筛选区域,指定自定义参数,插件不会初始化过滤器窗口,需要手工触发筛选动作
sheet.SetFilterArea(0, 0, 99999, 3, option);
//触发筛选
sheet.FilterArea("D"); //指定自定义列参数中的某一列作为筛选依据列
筛选后效果如下,只显示筛选后的数据行。
智表ZCELL的自定义筛选函数支持任意复杂逻辑编写,可关联多条数据字段、调用外部接口数据(如根据实时汇率筛选跨境订单)、结合公式计算结果(如筛选利润大于销售额20%的订单)等。
四、智表ZCELL筛选功能的核心优势
智表筛选功能支持弹出筛选框、自定义筛选区域,具有高级筛选的可视化操作体验,让特殊业务场景的筛选更便捷、高效。作为媲美Excel的前端表格插件,智表ZCELL的筛选功能相比传统组件和同类竞品,具备三大核心竞争力:
- 低门槛适配:完全复刻Excel筛选操作习惯,无需专业培训,用户可快速上手;API简洁易懂,开发者几行代码即可集成,大幅降低开发成本,相比自研节省20-30倍工时。
- 全场景覆盖:支持基础筛选、多列组合筛选、自定义规则筛选、区域筛选等全类型场景,适配文本、数字、日期等所有数据类型,满足企业级复杂业务需求。
- 高性能保障:采用优化的筛选算法,面对千万级海量数据,筛选响应时间控制在毫秒级,无卡顿延迟;支持筛选条件实时联动,数据修改后筛选结果即时更新,确保数据准确性。
- 高 兼容性:支持主流浏览器,无需依赖后端组件,纯前端即可实现所有筛选功能。
无论是企业ERP系统的员工数据管理、电商平台的销售订单分析、金融行业的报表筛选,还是教育机构的成绩统计,智表ZCELL的筛选功能都能精准驾驭海量数据,帮助用户快速挖掘核心信息,提升工作效率。
现在,智表 ZCELL 已开放免费试用,立即接入智表zcell官网进行测试,体验Excel级别的筛选功能!让数据筛选更高效、更精准,为业务决策提供有力支撑。