Sorting 将新项添加到存储区后的Dojo Datagrid排序

Sorting 将新项添加到存储区后的Dojo Datagrid排序,sorting,datagrid,dojo,Sorting,Datagrid,Dojo,我遇到了一个问题,DataGrid在对支持DataGrid的存储调用newItem()然后调用save()后无法自行恢复 <div dojoType="dojo.data.ItemFileWriteStore" url="/MultiRaterManagerAjax" id="mrWriteStore" jsId="mrWriteStore"</div> <table dojoType="dojox.grid.DataGrid" region="left" q

我遇到了一个问题,DataGrid在对支持DataGrid的存储调用newItem()然后调用save()后无法自行恢复

<div dojoType="dojo.data.ItemFileWriteStore" url="/MultiRaterManagerAjax" id="mrWriteStore" jsId="mrWriteStore"</div>     

<table dojoType="dojox.grid.DataGrid" region="left" query="{ hasSub: false }"
        clientSort="true" selectionMode="single"   jsId="ldrSubGrid" sortInfo="1"
        errorMessage="Loading..." store="mrWriteStore">
          <thead>
              <tr>
                  <th width="100%" field="_item" formatter="formatSubs">Subs</th>     
              </tr>

          </thead>
</table>
一个新项目被添加到存储中,数据网格将更新,显示新项目。但新项目在列表的底部。它似乎无法识别datagrid的排序顺序


我想我需要连接(或订阅)datagrid上的一个事件,它告诉我它已经更新了数据。然后在触发此事件时调用sort/filter函数。但是要连接/订阅什么呢?

前几天我一直在努力解决这个问题。我认为您需要从onComplete函数内部调用datagrid的sort()方法,您将其命名为afterStoreUpdate

dijit.byId('ldrSubGrid').sort();

这是用来分类的。谢谢我不认为商店里的事件会是我在网格上排序所需要的。在同样的情况下,仍然存在过滤问题,但我还不知道如何提问。onComplete:ldrSubGrid.filter({hasSub:false,},null);没有做任何事情,但是在Firebug中运行相同的代码可以正确地过滤网格。JavaScript有时很不稳定。它是用这样的函数包装的吗?onComplete:function(){ldrSubGrid.filter({hasSub:false,},null);}只需检查以确保
dijit.byId('ldrSubGrid').sort();