私は問題があります。LoadComplete は、データがグリッドに渡される前に発生します。
私はこのフォームを持っています:
jquery Post で新しい行データをサーバーに渡します。そして、グリッドを更新します
$('#grid').trigger("reloadGrid");
そのイベントがスローされた後、この関数を実行するとalert($('#grid').jqGrid('getCol', 'Unit', false, 'sum');)
、以前の値が表示されます (項目を追加する前の実際の値)。したがって、2行ある場合、値は
そして、3 番目の値 - 1 を追加しました。そして、ポップアップ ショー2が3を期待していました。行を削除すると、同じ問題が発生します My grid:
jQuery("#grid").jqGrid({
caption: 'Timesheet',
url:'/GetData',
editUrl: '/EditRow'
datatype: "json",
colNames: ['Id','Start Time', 'End Time', 'Unit'],
colModel: [
{ name: 'Id', index: 'Id' },
{ name: 'StartTime', index: 'StartTime' },
{ name: 'EndTime', index: 'EndTime' },
{ name: 'Unit', index: 'Unit' }
],
rowNum:10,
rowList:[10,20,30],
pager: '#pager2',
sortname: 'id',
viewrecords: true,
sortorder: "desc",
postData: { entityId: function () {
return $('#GetId').val();
},
loadComplete: function (data) {
**alert($('#grid').jqGrid('getCol', 'Unit', false, 'sum');)**
}
});
jQuery("#grid").jqGrid('navGrid','#pager2',{edit:false,add:true,del:false});
例を追加しました。 http://jsfiddle.net/5bmVt/1/
編集済み。修正例 http://jsfiddle.net/SUvvW/1/