Я инициализирую сетку следующим образом:
$("#mainGrid").jqGrid({
url : g_MainGridUrl,
datatype : 'json',
height : 460,
autowidth : true,
colNames : g_ColNames,
colModel : g_ColModel,
pager : '#pager',
rowNum : 100,
rowList : [100, 200, 300],
sortname : g_DefaultSort,
sortorder : 'desc',
sortable: true,
viewrecords : true,
caption : 'Results',
hidegrid : false,
rownumbers : true,
jsonReader : {
root : "ROWS",
page : "PAGE",
total : "TOTAL",
records : "RECORDS",
cell : "",
id : g_DefaultSort
},
loadComplete: function(){
var num_records = $('#mainGrid').getGridParam('records');
$('#gview_mainGrid div.ui-jqgrid-titlebar span').html('Results: '+num_records);
},
loadBeforeSend : function(thisXhr) {
xhr = thisXhr;
},
ondblClickRow: function(rowid) {
jQuery(this).jqGrid('viewGridRow', rowid, { width: "500"});
}
});
$("#mainGrid").jqGrid('navGrid', '#pager', {
del : false,
add : false,
edit : false,
refresh:false,
search: false,
view: true
});
$("#mainGrid").jqGrid('navButtonAdd','#pager',{
caption: "Columns",
title: "Reorder Columns",
onClickButton : function (){
$("#mainGrid").jqGrid("columnChooser", {
done: function() {
resize_the_grid();
},
height: 320
});
}
});
и вызываю сетку следующим образом, после создания фильтра Объект:
$('#mainGrid').setGridParam({
url : g_MainGridUrl + Ext.util.JSON.encode(filter)
});
$('#mainGrid').trigger("reloadGrid");
Как субъект заявляет, когда ядважды щелкните строку, чтобы просмотреть ее запись, а затем измените строки в модальном диалоговом окне, обновляются не все столбцы - некоторые делают, но не другие.Я подумал, что это может быть из-за того, что у меня не определено
для таблицы, поэтому я попытался добавить их.Я скачал самую последнюю версию (4.2.0).Там не отображаются ошибки.Это верно в IE8, Chrome, Safari.Есть идеи?
ОБНОВЛЕНИЕ: Я думаю, что нашел причину, но до сих пор нет решения.Кажется, что любой столбец с заголовком с пробелом в имени не может правильно прочитать сетку.Я подтвердил, добавив подчеркивания для замены пробелов в заголовках, и обнаружил, что для каждого исправленного столбца его значения начали обновляться.Я подаю отчет об ошибке в Trirand.
ОБНОВЛЕНИЕ 2: Кажется, уже подан отчет об ошибке: trirand forum - однако автор не считает это ошибкой,скорее разработчики не будут использовать заголовки столбцов с пробелами, поскольку jqgrid создает идентификаторы на основе имен в модели столбцов.Я просил изменить это поведение, но ожидаю, что мне придется покопаться в его коде, чтобы заставить его работать.