jqGrid - groupCollapse en init pero después de buscar unCollapse

Tengo un jqGrid que está usando la búsqueda de la barra de herramientas con algunas búsquedas de texto para businessName y un menú desplegable para los estados. Estoy usando la función de agrupación para agrupar por estado y esto funciona muy bien. También he configurado la opción de groupCollapse a verdadero así que básicamente carga una cuadrícula de estados con su recuento de negocios.

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

Luego, para la barra de búsqueda de mi barra de herramientas 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);
    }

});

Cuando registro [ x ] de hecho, está configurando gridParam en falso, pero cuando activo una recarga de la cuadrícula, no despliega los grupos.

Cualquier idea sería apreciada. Si no es posible, tendré que encontrar una solución diferente, pero este comportamiento sería ideal.

Gracias, Tim

preguntado el 08 de enero de 11 a las 21:01

1 Respuestas

Creo que encontré que la solución elimina la agrupación, lo cual está bien, ya que solo se puede elegir un estado a la vez de cualquier manera.

///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');  

}

EDITAR: Dado que groupCollapse dentro del objeto groupingView, debía configurarse usando la sintaxis a continuación. Esto también mantiene intacta la agrupación.

///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');   

}

Respondido el 09 de enero de 11 a las 23:01

No es la respuesta que estás buscando? Examinar otras preguntas etiquetadas or haz tu propia pregunta.