Je suis en train d'utiliser jqGrid avec des données locales et je trouve quelques questions:jqGrid Rafraîchissant données locales (objet JSON)
J'initialiser la chose comme ceci:
function refreshGrid($grid, results)
{
$grid.jqGrid({
data: results,
datatype: "local",
colNames:['#','File', 'Category', 'Line Number', 'Message Text','Detailed'],
colModel:[
{name:'count',index:'count', width:100, resizable: true},
{name:'basename',index:'basename', width:100, resizable: true, classes:['basename']},
{name:'category',index:'category', width:60, resizable: true},
{name:'linenumber',index:'linenumber', width:60, resizable: true},
{name:'text',index:'text',width:400, resizable: true},
{name:'detailed',index:'detailed',width:100,classes:['detailed'], resizable: true }
],
viewrecords: true,
rowNum:100,
rowList:[100,200],
pager: '#debug_errors_pager',
caption:"JSON Example"
});
}
Les données que je transmets, results
, sont un tableau d'objets.
Questions:
1) Le téléavertisseur est totalement hors. Il montre le nombre correct, mais il ne me laisse pas réellement parcourir les données.
2) Je ne peux pas actualiser les données. J'utilise ma propre fonction de recherche pour arriver à mon results
. Je n'arrive pas à comprendre comment mettre à jour les données existantes. La grille s'initialise la première fois. Lors des tentatives suivantes, il s'initialise à une table vide.
3) J'ai essayé des choses comme:
$grid.empty()
- ne fonctionne pas parce que l'objet de la grille $ est décorée par jqGrid. J'essaye de "nuke" la vieille grille et la rends simplement comme une solution de contournement. `$ grid.trigger ('reloadGrid') - Ne fonctionne pas, ne sait pas pourquoi.
Note: ceci utilise jQGrid 3.7.
Oui, j'ai essayé GridUnload, Pas de dés. La grille se décharge et ne revient jamais. – Koobz
Est-il possible que vos 'résultats' proviennent d'une requête ajax, et quand vous 'déchargez' et rechargez votre jqGrid, les résultats ne sont pas encore chargés? Donc, la grille sera vide? (c'est la seule chose que je peux imaginer qui peut être faux) – bruno