Я некоторое время работал с jqGrid, и я просто пытался создать новый серверный скрипт для возврата данных в клиентскую сетку. Много раз я пытаюсь вернуться к основам этих программ. Я хотел вернуть данные JSON в свою сетку, просто загрузите один раз без пейджера. После ссылки на документацию здесь я попытался создать свою строку JSON в соответствии с форматом из документов, например:
{ "total": "xxx", "page": "yyy", "records": "zzz", "rows" : [ {"id" :"1", "cell" :["cell11", "cell12", "cell13"]}, {"id" :"2", "cell":["cell21", "cell22", "cell23"]}, ... ] }
Вот определение сетки JS:
$("#jqGrid").jqGrid({ url:'/dataurl.php', shrinkToFit: true, autowidth: true, datatype: 'json', mtype: 'POST', postData:{ 'arg1':'load_data', 'num_days':$('#num_of_days_input').val() }, colNames:[ 'Ship_Date', 'Insert/Label', 'Customer', 'JobNum', 'QNTYOrdered', 'DEL', 'Ship_Type', 'Carrier', 'Time', 'Status' ], colModel:[ {width:20,name:'Ship_Date', index:'Ship_Date'}, {width:20,name:'InsertorLabel', index:'InsertorLabel'}, {width:20,name:'Customer', index:'Customer'}, {width:20,name:'JobNum', index:'JobNum'}, {width:20,name:'QNTYOrdered', index:'QNTYOrdered'}, {width:20,name:'DEL', index:'DEL'}, {width:20,name:'Ship_Type', index:'Ship_Type', edittype:'select', editoptions:{value:"Partial:Partial;Balance:Balance;Full:Full"}}, {width:20,name:'Carrier', index:'Carrier', edittype:'select', editoptions:{value:"UPS:UPS;Fed Ex:Fed Ex;2D:2D;T&M:T&M;Cougar:Cougar"}}, {width:20,name:'Time', index:'Time', edittype:'select', editoptions:{value:"before 7am:before 7am;7-9am:7-9am;9-12am:9-12am;12-3pm:12-3pm;after 3pm:after 3pm"}}, {width:20,name:'Status', index:'Status', edittype:'select', editoptions:{value:"To Ship:To Ship;Ship Pending:Ship Pending"}} ], loadonce: true, sortname: 'Ship_Date', sortorder: 'asc', viewrecords: true, gridview: true, caption: 'Shipping Request', loadError: function(xhr, status, error){ alert(xhr.responseText); alert(status); alert(error); }, loadComplete: function(data){ alert(JSON.stringify(data, null, 4)); } });
Я довольно много отлаживал с loadError
метода loadError
, и теперь, когда у меня нет ошибок, я могу видеть, как мои данные возвращаются с сервера. Мне кажется, что формат правильный:
Но, увы, сетка по-прежнему остается пустой. Я все еще что-то пропустил? Благодаря!