dojox.grid.EnhancedGrid中的数据排序



首先,非常感谢你们今天所做的一切。那很好。

我正在开发一个web应用程序与Dojo,我正面临着排序我的行在dojox.grid.EnhancedGrid的问题。假设我有一个产品,产品状态,JSON文件如下:

[
  {"id":1,"name":"Car A","price":"1000","productstatus":{"id":1,"name":"new"}},
  {"id":2,"name":"Car B","code":"2000","productstatus":{"id":2,"name":"old"}}
]

我想把这些数据放在我的网格中,并通过点击标题来改变行顺序。

在我的HTML文件中有:
<table id="lstProduct" jsId="lstProduct" dojoType="dojox.grid.EnhancedGrid" >
  <thead>
    <tr>
      <th field="id">Id</th>
      <th field="name" width="100px">Name</th>
      <th field="price" width="100px">Price</th>
      <th field="id" formatter="formatterStatus">Status</th>
    </tr>
  </thead>
</table>

和Javascript文件:

dojo.addOnLoad(function() {
  productStore = new dojo.data.ItemFileReadStore({data: { items: ${products} }});
  dijit.byId("lstProduct").setStore(productStore);
});
// formatter
function formatterStatus(val, rowIndex) {
  return lstTasks.getItem(rowIndex)['productstatus'][0]['name'];
}

问题?我不能按状态(状态的name)订购,当我点击状态标题时,它只能按product.id订购。

有什么解决方法吗?

我认为您需要添加clientSort="true"来启用客户端排序。将此添加到<table>声明中。

相关内容

  • 没有找到相关文章

最新更新