JQGrid не загружает данные из переменной массива
У меня есть проблема, которая смущает меня в течение нескольких дней. Сначала я протестировал жестко закодированный подход в своей функции javascript, который загружает локальную переменную, содержащую простой массив, следующим образом:
var myGridData = [
{ ID: "55505", Item: "Mortgage foreclosure", Class: "36", Status: "Pending" },
{ ID: "55506", Item: "Food truck parks", Class: "43", Status: "Pending" }];
for (var i = 0; i <= myGridData.length; i++)
jQuery("#popGrid").jqGrid('addRowData', i + 1, myGridData[i]);
И вышеупомянутый жесткий код работает. Но когда я назначаю данные динамически для моей переменной GridData (на основе выбора пользователя из другой сетки, моя сетка заполняется пустыми строками, по одной строке для каждого символа в переменной (то есть 154 строки с использованием вышеуказанного - вместо двух ожидаемых) Я дважды проверил две строки, и они идентичны (включая правильные квалификаторы, скобки и т. Д., Поэтому я в растерянности. Есть идеи?
Заранее спасибо,
Neale
Спасибо Олегу, я могу посмотреть на заполнение сетки при ее создании… как только я все немного лучше понимаю. Я вроде как колю в темноте. Ниже я включил код, который я использую для получения строки данных массива со страницы "main", которая затем передается в диалог через скрытое поле. Я следил за этим с моими параметрами JQGrid и colModel:
var temp = document.getElementById('<%=txtArray.ClientID%>').value;
var myGridData = temp;
jQuery("#popGrid").jqGrid({
multiselect: true,
data: myGridData,
datatype: 'local',
colNames: [
'ID',
'Item',
'Class',
'Status',
],
colModel: [
{ name: 'ID', index:'ID', key: true, width:50 },
{ name: 'Item', index: 'Item', key: true, width:100 },
{ name: 'Class', index: 'Class', key: true, width: 150 },
{ name: 'Status', index: 'Status', key: true, width: 250 },
],
multiSort: true,
sortable: true,
loadonce : true,
rownum: 5,
width: 850,
height: 100,
scrollOffset: 1,
shrinkToFit: true,
sortname: 'ID',
viewrecords: true,
gridview: true,
sortorder: "desc",
pager: '#popPager'
});