J’ajoute des données de lignes à mon JQGrid côté client avec javascript:
var grid = jQuery("#"); var rowKey = grid.getGridParam("selrow"); var newRow = [{ ID: memberId, FullName: memberFullName, Percent: parseInt(percent)}]; grid.addRowData(memberId, newRow);
Le code ci-dessus fonctionne bien, mais comment puis-je obtenir toutes les données de lignes insérées (dans JQGrid) dans code-behind?
Vous pouvez obtenir toutes les lignes de la grid en
var myData = grid.jqGrid('getRowData');
ou en ce qui concerne
var myData = grid.jqGrid('getGridParam', 'data');
Le dernier moyen ne peut être utilisé qu’avec un datatype
local ou en cas de loadonce: true
. Il renvoie des données non seulement de la page en cours, mais également de toutes les données de toutes les pages.
La méthode getRowData
utilise unformatter pour lire les données de toutes les cellules de la grid.
Si j’avais rencontré un problème similaire, voici ce que j’ai fini par utiliser
var data = $("#table-id").jqGrid('getGridParam', 'data'); for (var i = 0; i < data.length; i++) { var f_name = data[i].FirstName; var l_name = data[i].LastName; // blah... blah.. }
Référence