我遇到了一个问题,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>
事件处理程序调用以下 javascript
item = mrWriteStore.newItem({});
//set the necessary attributes on item
mrWriteStore.save({onComplete:afterStoreUpdate, onError: saveFailed});
新项目将添加到商店,并且 DataGrid 会更新以显示新项目。但新项目位于列表底部。它似乎无法识别数据网格的排序顺序。
我想我需要在数据网格上连接(或订阅)一个事件,它告诉我它已经更新了数据。然后,当该事件触发时,我调用排序/过滤函数。但是要连接/订阅什么?
前几天我正为此苦苦挣扎。我认为您需要从 onComplete 函数内部调用数据网格的 sort() 方法,该函数已在 StoreUpdate 之后命名
dijit.byId('ldrSubGrid').sort();
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)