带有JSONREST问题的Dojo增强网格



我正在尝试使用Dojo JSONREST的增强网格,但遇到了一些问题。我一直在找一些例子,但不知道如何做我需要的。

在下面的代码中,我的rest服务接受两个参数,并且对该服务的查询是有效的。问题是,当调用grid.startup()时,它似乎会再次调用Rest服务,因为没有传递任何参数,所以Rest服务会失败。我在这里做错了什么?

还有什么方法可以更新到存储区,使其只包含查询的结果吗?,所以当网格出现时,它只包含这些值?

感谢任何帮助或建议。。

ready(function(){
  var grid;
  var store = new JsonRest({
              target: "rest/search"
              });   
  store.query({term: "test", category: "category"},
      {
        start: 10,
        count: 10,
      }).then(function(data){
      // how do i update store with queried results?
      });
  dataStore = new ObjectStore({ objectStore: store });
  /*set up layout*/
  var layout = [[
   {'name': 'Name', 'field': 'col1', noresize: true, 'width': '100%'},
  ]];
  /*create a new grid:*/
  grid = new EnhancedGrid({
      id: 'grid',
      store: dataStore,
      structure: layout,
      selectable: true,
      selector: false,
      selectionMode: 'none',
      escapeHTMLInData: false,
      autoHeight:true
  }, document.createElement('div'));
grid.startup();
}

您尝试过设置网格的查询参数吗?指向文档的链接。还有一个例子的链接。

通过查看问题中的代码,网格似乎应该显示数据块/页面——一个使用网格分页插件的例子。

过滤器插件也可能对您感兴趣。

当您定义一个新网格时,您必须将其传递给dojo:

/*create a new grid:*/
  grid = new EnhancedGrid({
  id: 'grid',
  store: dataStore,
  structure: layout,
  selectable: true,
  selector: false,
  selectionMode: 'none',
  escapeHTMLInData: false,
  autoHeight:true
 }, document.createElement('div'));
 /*append the new grid to the div*/
 dojo.byId("gridDiv").appendChild(grid.domNode);
 grid.startup();

相关内容

  • 没有找到相关文章

最新更新