free-jqgrid: getLocalRow renvoie false dans free-jqgrid4.13.6

entrez la description de l'image ici Nous utilisions le code ci-dessous dans jqgrid 4.3. Maintenant, je passe à 4.13.6. Le code ci-dessous fonctionnait en 4.3, mais en 4.13, il retournait false … Toute aide s’il vous plaît …

var grid = $("#myGrid").jqGrid('getRowData'); $.each(grid, function(key, value) { selectedRow = key+1; var rowData = $("#myGrid").jqGrid('getLocalRow', selectedRow); }); 

Je n’utilise aucun identifiant lors du remplissage de ma grid. type de données: json, numéros de téléphone: true.

Quand je débogue, je vois que l’ID de chaque ligne est ‘jqg41’, ‘jqg42’ etc … Et parfois c’est ‘jqg61’, ‘jqg62’ etc …

un peu plus de code (mais pas de code complet)

 $grid.jqGrid({ datatype: 'json', url: 'myUrl/byFileId.do?custId='+custId, mtype: 'GET', ajaxSubgridOptions: { async: false }, colNames:[ col1, col2 ...], colModel:[ . . . . . . . . . ], headertitles:true, rowNum:999, rowList:[], pager: '', records: 1000, pgbuttons : false, viewrecords : false, pgtext : null, pginput : false, gridview:true, ignoreCase:true, rownumbers:true, sortname: 'invdate', viewrecords: true, sortorder: 'desc', multiselect: true, caption: "Customer Search Result", height: '100%', editurl: 'clientArray', autoencode: true, loadonce: true, multiselectWidth: 30, width: rmtPageTitleWidth, viewsortcols : [true,'vertical',true], onSortCol: function (index, idxcol, sortorder) { rowIdAndNoOfRowPair = []; if (this.p.lastsort >= 0 && this.p.lastsort !== idxcol && this.p.colModel[this.p.lastsort].sortable !== false) { $(this.grid.headers[this.p.lastsort].el).find(">div.ui-jqgrid-sortable>span.s-ico").show(); } }, 

entrez la description de l'image ici

Vous pouvez simplement utiliser

 var localData = $("#myGrid").jqGrid("getGridParam", "data"); 

pour obtenir toutes les données locales sous forme de tableau. C’est la référence aux données internes de jqGrid.

MISE À JOUR: Si la grid est sortingée ou filtrée localement et que vous souhaitez obtenir les données de toutes les lignes dans le même ordre, vous devez obtenir le paramètre lastSelectedData au lieu des data . Vous pouvez forcer le sorting des données localement après le chargement à partir du serveur par l’utilisation du paramètre forceClientSorting: true de jqGrid, en plus de loadonce: true .

La démo https://jsfiddle.net/OlegKi/akv51mdq/ illustre lastSelectedData en cas de données locales, qui ne possèdent aucune information d’identification. Une autre démo https://jsfiddle.net/OlegKi/Ljejoh21/ fait de même avec les données chargées à partir du serveur.