Récupérer les lignes sélectionnées de jqGrid

JqGrid 3.5 (complet) fonctionne principalement. Je le récupère des données avec l’option de sélection multiple activée. La partie que je ne peux pas me mettre au travail est d’obtenir les lignes sélectionnées. L’état de la documentation :

Pour obtenir les lignes sélectionnées, nous pouvons utiliser la méthode getGridParam (‘selarrrow’). En utilisant notre exemple, nous pouvons écrire ceci:

jQuery (“# ​​grid_id”). getGridParam (‘selarrrow’);

qui retournera un tableau avec les lignes sélectionnées (c’est-à-dire, [“11”, “9”] de la figure ci-dessus). Les valeurs du tableau sont les identifiants des lignes sélectionnées.

Cela ne fonctionne pas et renvoie une valeur indéfinie (oui, j’ai des lignes sélectionnées). J’ai aussi xmlreader: id setup dans ma config de grid.

Quelqu’un peut-il m’indiquer une direction à regarder? J’ai essayé tout ce que je peux penser en vain.

UPDATE: redsquare était correct à propos de sélecteurs incorrects. mon div conteneur a le même identifiant que la grid, je l’ai remarqué quand je suis allé vérifier mon code d’installation et que le sélecteur était table#results . Merci a tous. Si vous postez une réponse à redsquare, je l’accepterai car c’est la bonne réponse.

Pouvez-vous vérifier les sélecteurs pour moi en premier. s’ils sont corrects, pouvez-vous essayer de télécharger votre page ou de reproduire le problème sur jsbin.com. 🙂

Essayez ceci, il retournera un tableau des identifiants des lignes sélectionnées.

 var s; s = jQuery("#yourGridName").jqGrid('getGridParam','selarrrow'); alert(s); 
 var rowKey = jQuery("#yourGridName").jqGrid('getGridParam','selrow'); var rowObject = jQuery('#yourGridName').getRowData(rowKey); 

Cela donnera également les détails de la ligne et l’utilisation de normal. opérateur, vous pouvez obtenir la valeur de la colonne.

Vous devez vous référer non à l’object jQuery, mais à jqGrid itseft.

Ainsi, lors de l’initialisation de la grid, vous écrivez le code comme suit:

 var myGrid = $("#list")..jqGrid(....); 

Et dans votre gestionnaire d’événements, si vous souhaitez récupérer les ID des lignes sélectionnées, vous devez écrire:

 var rows = myGrid.getGridParam('selarrrow'); 

Une autre façon d’obtenir les lignes sélectionnées: jQuery('#grid').jqGrid('getGridParam','selarrrow');