2011-12-25 3 views
1

У меня есть n jqGrid, который загружает одну строку данных, и у меня есть пользовательская кнопка для загрузки другого набора данных, а затем перезагрузка сетки! Когда Grid Loads It Works Fine No Problem, но когда я добавляю новые данные, я просто получаю n Загружающий блок. Я борелся за n несколько часов и без радости. Любая помощь. Пожалуйста, я даже выгрузил сетку, но она не воссоздается, даже если я Reinsert HTML-теги, пожалуйста, помогите?jqGrid Hangs On Reload Of Data

<table id="PrimaryGrid"></table> 
<input id="addinv" type="button" value="Add Custom Item"> 
var string; 
var Count = 0; 
var myrow = []; 
var item = {"id": Count,"cell": ["dfg","dfg","dfg","dfg","","false"]}; 
Count = Count + 1; 
myrow.push(item); 
$('#PrimaryGrid').jqGrid({datastr: GetJSON(),datatype: 'jsonstring', 
colNames: ['Code', 'Description', 'Qty', 'Price','Action',''], 
colModel: 
    [ 
    { name: 'Code', index: 'Code', width: 50, align: 'left', sortable: false }, 
    { name: 'Description', index: 'Description', width: 300, align: 'left', sortable: false }, 
    { name: 'Qty', index: 'Qty', width: 50, align: 'center', sortable: false }, 
    { name: 'Price', index: 'Price', width: 100, align: 'right', sortable: false }, 
    {name:'act',index:'act', width:60,sortable:false}, 
    {name:'subg',index:'subg', width:1,sortable:false}, 
    ], 
rowNum: -1, 
height: 'auto', 
multiselect: false, 
autowidth: true, 
sortname: 'Qty', 
sortorder: 'ASC', 
viewrecords: true, 
subGrid: true, 
loadonce: false, 
gridComplete: function() { 
    for (var i = 0; i < Count; i++) { 
    if($("#PrimaryGrid").getRowData(i).subg == "false"){ 
    $('tr#'+i, $("#PrimaryGrid")) 
    .children("td.sgcollapsed") 
     .html("") 
     .removeClass('ui-sgcollapsed sgcollapsed'); 
    } 
    }     }, 
caption: '<div style="width:630px;height:20px;">Items and Bills</div>' 
}); 
function GetJSON() { 
var myarray; 
myarray = { 
    "page":"1", 
    "total":Count.toString(), 
    "records":Count.toString(), 
    "rows":myrow 
}; 
return myarray; 
} 
$("#PrimaryGrid").jqGrid('setGridParam',{ 
gridComplete: function(rowid, aData, rowelem) { 
    alert('test'); 
    var rowData = $("#PrimaryGrid").getRowData(rowid); 
    if(rowData.Action == "false"){ 
    $('tr#'+rowid, grid) 
    .children("td.sgcollapsed") 
    .html("") 
    .removeClass('ui-sgcollapsed sgcollapsed'); 
    } 
} 
}); 
$('.ui-jqgrid').css('font-size', '12px'); 
$('.ui-jqgrid tr.jqgrow td').css('font-size', '12px'); 
document.getElementById('addinv').onclick=function(){ 
var item = {"id": Count,"cell": ["dfg","dfg","dfg","dfg","","false"]};; 
Count = Count + 1; 
myrow.push(item); 
$('#PrimaryGrid').trigger("reloadGrid"); 
}  

Там 3 Ошибки в Firebug

b.isArray не является функцией jquery.jqGrid.min.js линии 72 б (d.target) .closest не функция jquery.jqGrid.min.js линия 113 б (d.target) .closest не является функцией jquery.jqGrid.min.js Line 113

Любая помощь?

ответ

0

Вы получаете ошибку Javascript? В FireFox откройте консоль инструментов tools-> web developer->, затем перезагрузите страницу. (Предполагая, что для этого есть плагины FF).