道场如何过滤定义EnhanceGrid被转移到服务器端(How can filter definit

2019-10-16 13:08发布

我使用dojox.grid.EnhancedGrid的过滤器插件。 它的推出是http://dojotoolkit.org/reference-guide/dojox/grid/EnhancedGrid/plugins/Filter.html#dojox-grid-enhancedgrid-plugins-filter 。

并执行服务器端的过滤器,它说:

在默认情况下,在服务器端被认为是无状态(REST样式)。在这种情况下,你应该在过滤器定义与商店的读取请求一起发送到服务器端。您可以通过每一次修改的请求对象做到这一点前store.fetch被称为“。

它给的示例代码某些部分:

var grid = new dojox.grid.EnhancedGrid({
  id:"grid",
  store:"mystore",
  structure:"mystructure",
  plugins:{
    filter: {
      isServerSide: true,
      setupFilterQuery: setupFilter
    }
  }
});
var setupFilter = function(commands, request){
  //the commands object here is the same as the POSTed commands object for stateful server, see below.
  if(commands.filter && commands.enable){
    //some filter is defined and valid. You can modify the request object here.
  }else{
    //no filter is valid.
  }
};

从这个例子中,我仍然不知道如何过滤器定义传送到服务器端。 commands.filter就像一棵树JSON对象。 怎样才可以通过URL参数传递到服务器端。 有人可以给我一些示例代码?

顺祝商祺ZY

Answer 1:

你可以使用dojo.toJson序列化整个过滤,确定指标和评估它在服务器端
例如

request.query.filter=dojo.toJson(commands.filter);  

问候



文章来源: How can filter definition of dojo EnhanceGrid be transfered to server-side
标签: filter dojo grid