设置查询以搜索dojo数据网格的所有字段

时间:2011-08-12 02:00:19

标签: datagrid dojo

我有一个包含多个字段的Dojo DataGrid。我目前正在设置查询以一次搜索一个字段,如下所示:

grid.setQuery( {name:"Bob"}, {ignoreCase:true} );

但是我希望查询一次搜索所有字段。例如,我说我有三个名为“名字”,“朋友”,“家庭”的字段。假设我只想在三个字段中的任何一个中包含“Bob”的行显示在网格中。如果没有三个单独的查询,我将如何做到这一点?

感谢任何帮助。

1 个答案:

答案 0 :(得分:2)

您的商店是ItemFileReadStore还是QueryReadStore

如果是ItemFileReadStore,您可以使用AndOrReadStore http://dojotoolkit.org/reference-guide/dojox/data/AndOrReadStore.html

否则,我对有限提取存储的最佳建议是调整后端代码以支持过滤选项,以便在商店进行POST(或GET)时,解析出您想要的字段数组搜索,并相应地返回结果集。

你会看到像

这样的东西
start 0
count 25
columnsToQuery : ["name","friend","family"]  //or perhaps a CSV string will do
columnOperator : "AND"
columnValue : "Bob"

您必须根据业务需求调整范例,但只要服务器可以根据过滤输入正确返回结果集,此方法就可以使用。

生成此类请求的调用将是

grid.setQuery({
  columnsToQuery : ["name","friend","family"],
  columnOperator : "AND",
  columnValue : "Bob"
});