列自动筛选器是一种通过设置数据列的autoFilter属性,将除包含在列的值中重复的值以外的值显示为标准项, 并且只获取其中所选项的相关数据行至网格行的筛选装置。 它可以与现有的列筛选器同步使用。 另外,当项的数量较多时,可以通过指定valueScale,以替代个别项的范围为标准而进行筛选。
下列例题中,显示根据数据类型的自动筛选器设置。
在"产品名"和"客户名"列中,只设置了自动筛选器,并且在"国家"列中,同时设置了列筛选器和自动筛选器。 另外,在"货币"列中,只设置了列筛选器。
在"产品名"列中,通过将ColumnAutoFilter.valueScale指定为2,可以在前两个字相匹配时进行选择,而在"客户名"列中,通过将其指定为-2,可以在后两个字相匹配时进行选择。 另外,通过将ignoreCase指定为true并且将displayCase指定为TextCase.UPPER,在选择框中显示大写字母。
"产品名"列的自动筛选器的active状态。
使用所选行的值,选择"国家"列的自动筛选器。v 1.3.8
使用所选多个行的值,选择"国家"列的自动筛选器。v 1.3.8
清除"国家"列的所有自动筛选器选项。v 1.3.8
如果是NUMBER字段,自动筛选器的valueScale可以将值筛选为转换成10的倍数的范围值。 如果valueScale大于0,乘以10的(valueScale - 1)平方的值将会被筛选为同一范围值, 而如果小于0,就会筛选为相当于valueScale的、乘以-10的平方的范围值。
下列例题中,"单价"列的valueScale已被设置为2,所以"111.15"和"115.45"两个值将会被筛选为"110"范围值。
通过指定ColumnAutoFilter.editSize或FilterSelectorOptions.minWidth、FilterSelectorOptions.maxWidth等, 可以明确指定筛选器选择框的宽度。
连接在DATETIME字段的列的valueScale,将会被用于与DateTimeScale常数值相同的范围值。 例如,如下列"订单日期"列,当valueScale被指定为DateTimeScale.QUARTER时,属于同一季度的日期值将会被筛选为同一范围的日期值。 因为"发货日期"列已被设置为DateTimeScale.DATE,所以当时间值不同但年月日相同时,将会筛选为同一值。
如果是BOOLEAN字段,则会在筛选器列表中显示false、true、undefined等三个值中的一个值。 如果在列样式中设置booleanFormat,就会根据相关格式而显示字符串。 下列例题中,已被设置为"Female;Male;-"。