2011-01-08 2 views
0

J'ai un jqGrid qui utilise la recherche dans la barre d'outils avec quelques recherches de texte pour businessName et une liste déroulante pour les états. J'utilise la fonction de regroupement pour regrouper par état et cela fonctionne très bien. J'ai également mis l'option de groupCollapse à vrai donc charge fondamentalement une grille d'états avec leur nombre d'entreprises.jqGrid - groupCollapse à l'initialisation mais après la recherche unCollapse

groupText: ["{0} - {1} businesses"], 
groupCollapse:true 

Ensuite, pour ma barre d'outils Barre de recherche filterToolbar

$("#businessGrid").jqGrid('filterToolbar',{stringResult: true,searchOnEnter : false, 
    afterSearch : function(){ 
    $("#businessGrid").jqGrid('setGridParam', 
      {'groupCollapse':false} 
    ).trigger('reloadGrid'); 
     var x = $("#businessGrid").jqGrid('getGridParam','groupCollapse'); 
     console.log(x); 
    } 

});

Lorsque je me connecte [x], il définit en effet le paramètre gridParam sur false, mais lorsque je déclenche un rechargement de la grille, il ne désagrège pas les groupes.

Toutes les idées seraient appréciées. Si ce n'est pas possible, je devrai trouver une solution différente, mais ce comportement serait idéal.

Merci, Tim

Répondre

1

pense avoir trouvé la solution supprime le regroupement qui est bien puisque seul un Etat peut être choisi à la fois d'aucune façon.

///if blank option (all states option) is chosen reapply grouping 
if($("#gs_StateFull").val() == "") { 
    $("#businessGrid").jqGrid('setGridParam',{'grouping':true}).trigger('reloadGrid'); 
} else { 
    $("#businessGrid").jqGrid('setGridParam',{'grouping':false}).trigger('reloadGrid'); 

} 

EDIT: Comme groupCollapse à l'intérieur de l'objet groupingView, il doit être défini à l'aide de la syntaxe ci-dessous. Ceci maintient le regroupement intact aussi bien

///if blank option (all states option) is chosen reapply grouping 
if($("#gs_StateFull").val() == "") { 
    $("#businessGrid").jqGrid('setGridParam',{groupingView: { groupCollapse : true} }).trigger('reloadGrid'); 
} else { 
    $("#businessGrid").jqGrid('setGridParam',{groupingView: { groupCollapse : false} }).trigger('reloadGrid'); 

} 
Questions connexes