Javascript 获取增强网格的过滤器插件查询
在我的场景中,我有一个带有过滤器插件的增强网格。当过滤器插件被激活时,我想检索过滤器查询(值、条件、列和逻辑任意-参见代码中的注释) 之后,我希望将过滤器设置为null,并通过编程方式使用相同的查询设置新过滤器。不要问我为什么要这样做:D,但我需要一个更大的场景 这里是我的场景的代码片段和TODO注释Javascript 获取增强网格的过滤器插件查询,javascript,dojo,Javascript,Dojo,在我的场景中,我有一个带有过滤器插件的增强网格。当过滤器插件被激活时,我想检索过滤器查询(值、条件、列和逻辑任意-参见代码中的注释) 之后,我希望将过滤器设置为null,并通过编程方式使用相同的查询设置新过滤器。不要问我为什么要这样做:D,但我需要一个更大的场景 这里是我的场景的代码片段和TODO注释 if (grid.layer("filter")._filter != null) { console.log(grid.layer("filter")); // TODO: How do I
if (grid.layer("filter")._filter != null) {
console.log(grid.layer("filter"));
// TODO: How do I get the query "value" and "condition" for each "column"? In addition how do I get like here the "logicany"?
// Something like:
// grid.layer("filter").getJsonQuery?!
grid.setFilter(null);
// Here I set it manually, but I want to set the retrieved values.
grid.setFilter([{
type: 'string',
column: 1,
condition: 'contains',
value: 'Test'
}, {
type: 'number',
column: 2,
condition: 'lessthan',
value: 100
}], 'logicany');
}
只要做:
grid.getFilter()
这将返回筛选器对象的数组,每个对象具有以下属性:
{
colTxt: "Year"
column: "3"
condTxt: "contains"
condition: "contains"
formattedVal: "2003"
type: "string"
value: "2003"
}
只要做:
grid.getFilter()
这将返回筛选器对象的数组,每个对象具有以下属性:
{
colTxt: "Year"
column: "3"
condTxt: "contains"
condition: "contains"
formattedVal: "2003"
type: "string"
value: "2003"
}
从何处获取匹配参数?我想知道它是logicany还是logicall。请尝试grid.getFilterRelation(),从哪里获取匹配参数?我想知道它是logicany还是logicall。请尝试grid.getFilterRelation()