是否可以创建一个 dgrid 查询来搜索多个列上的正则表达式字符串?通常语法指定 {column1: "foo", column2: "foo"} 但它会查找 column1 和 column2 都是 "foo" 的行。但我想对两列使用相同的搜索字符串......这可能吗?我该怎么做?我需要像 {column1 || 第 2 列:“富”}。
问问题
3741 次
1 回答
5
您可以编写自己的函数,正如我在对上一个问题的回答中提到的那样是否可以像在 datagrid 中一样过滤 dgrid 中的数据?
或者您可以使用资源查询语言 (RQL)。
dgrid
查询其存储,例如dojo/store/Memory
,dojo/store/util/SimpleQueryEngine
默认使用。您需要做的就是使用您选择的QueryEnginestore.queryEngine
来提供属性。在 RQL 的情况下,它看起来像这样(来源):
require(["dojo/store/Memory", "rql/js-array", "dgrid/OnDemandGrid"], function(Memory, rql, Grid) {
var store = new Memory({ data: { /* some data here */}});
store.queryEngine = rql.query;
var grid = new Grid({
store: store,
columns: { /* some columns here */}
}, "grid")
});
现在您可以使用 RQL 语法查询 dgrid。回答您的问题的查询:(column1=foo|column2=foo)
。
请看看我的 jsFiddle ( http://jsfiddle.net/phusick/VjJBT )。随意使用 dgrid 本身(有一些预定义的查询)或 DOH 单元测试(打开 JS 控制台以查看输出)进行分叉和试验:
于 2012-09-01T10:40:44.817 回答