Plugins 如何从Dojo增强型网格过滤器插件下拉条目中删除“任意列”选项

Plugins 如何从Dojo增强型网格过滤器插件下拉条目中删除“任意列”选项,plugins,filter,dojo,Plugins,Filter,Dojo,我一直在使用Dojo增强网格过滤器插件。我的增强网格正在与服务器端存储进行通信,因此我的筛选条件也被发送到服务器以获取筛选数据 Dojo过滤器插件至少提供9-10个过滤器,如contains、startswith、endswith等 在我的服务器中,我只有2-3个过滤器的过滤查询 我使用disabledConditions在过滤器插件下拉列表中不显示标准 阅读文档后,我了解了anyColumn,可以在下拉列表中的anyColumn选项中禁用条件。即使我在任意列中给出了禁用的条件的完整列表,仍然可

我一直在使用Dojo增强网格过滤器插件。我的增强网格正在与服务器端存储进行通信,因此我的筛选条件也被发送到服务器以获取筛选数据

Dojo过滤器插件至少提供9-10个过滤器,如contains、startswith、endswith等

在我的服务器中,我只有2-3个过滤器的过滤查询

我使用disabledConditions在过滤器插件下拉列表中不显示标准

阅读文档后,我了解了anyColumn,可以在下拉列表中的anyColumn选项中禁用条件。即使我在任意列中给出了禁用的条件的完整列表,仍然可以看到空的下拉框

var disabledArray1=[相等,起始带,不起始带,小于,小于,大于,大于或等于,包含,结束带,注释带,不包含,不起始带,注释带,范围,为空]

过滤器:{ 项目名称:“调查区域”, closeFilterbarButton:正确, 规则计数:1, 是的, setupFilterQuery:setupFilter, 任意列:禁用Darray1 },


有没有一种方法可以从插件过滤器下拉列表中删除任何列的条目???

除了这样一个肮脏的黑客,我找不到其他方法:

dojo.forEach(dijit.byId('yourGridId').pluginMgr.getPlugin('filter').filterDefDialog._cboxes, function(criteriaBox) {
    var theSelect = criteriaBox._colSelect;
    theSelect.removeOption(theSelect.options[0]);
});

我假设anycolumn选项是选择中的第一个。。。在删除之前,请随意添加其他检查…

我刚刚向dojo提交了一个bug。让我们看看他们怎么说:。

我的规则计数为3。但这只是让第一条规则不可见,而不是让其他规则不可见。如何使任何列对所有列都不可见?