Полагаю, вы установили $.jgrid.no_legacy_api = true;
, как я делал в моих последних демонстрациях.
«Стандартный» (устаревший API) код jqGrid устанавливает множество расширений методов jQuery. Это опасно в случае использования многих других плагинов jQuery. Вероятность конфликта имен увеличивается. Поэтому рекомендуется использовать jqGrid API "новый стиль". В случае setGridWidth
метода вы должны использовать
$("#jqGridElement").jqGrid('setGridWidth', 600);
вместо
$("#jqGridElement").setGridWidth(600);
Одно небольшое общее замечание: я рекомендую вам определить gridObj
как
var gridObj = $("#jqGridElement");
gridObj.jqGrid({ datastr: tableSrc,...
вместо
var gridObj = $("#jqGridElement").jqGrid({ datastr: tableSrc,...
Преимущество заключается в том, что значение gridObj
будет установлено до вызова $("#jqGridElement").jqGrid
, и вы можете использовать безопасный gridObj
внутри любого события jqGrid
. Например, вы можете использовать переменную gridObj
внутри события loadComplete
. В случае использования таким же образом, как вы используете сейчас, переменная gridObj
может быть undefined
при первом использовании события loadComplete
.