Oui, il est vrai que ce n'est pas une approche très conventionnelle, et c'est essentiellement ce que vous avez dit que vous envisagiez de faire, mais j'ai trouvé que c'était la façon la plus simple pour obtenir toutes les lignes sélectionnées et ont également la case à cocher en-tête sélectionné:
var grid = $("#my_grid");
grid.resetSelection();
$('#cb_my_grid').click();
var ids = grid.getDataIDs();
for (var i=0, il=ids.length; i < il; i++)
grid.setSelection(ids[i], false);
Je suppose que les lignes ne sont pas sélectionnés lorsque la case d'en-tête est cliqué par programme en raison de la jqGrid im sous-jacente plementation, comme vous l'avez dit? Je ne sais pas comment ça fonctionne en dessous, mais cela semble fonctionner pour moi en ce moment. La principale raison pour laquelle je veux m'assurer que la case d'en-tête est sélectionnée dans mes grilles est que l'utilisateur peut inconsciemment déterminer que oui, toutes les lignes de la grille sont définitivement sélectionnées (y compris celles non visibles sous le parchemin actuel voir), et ne pas avoir à cliquer sur la case à cocher d'en-tête juste pour s'assurer.
@Craig - Je vais devoir essayer votre méthode, il semble plus simple et plus raisonnable
Merci pour votre temps, il semble que je me contenterai aller avec cette approche alors. –