Ne dites jamais jamais. jqGrid utilise la classe Sortable de jQueryUI pour exécuter la fonction glisser-déposer de la colonne. http://jqueryui.com/demos/sortable/
Pour supprimer une colonne de la liste des colonnes triables, exécutez ces deux commandes après avoir rendu votre grille (avec sortable: true).
// disable the sortable property on your target element
// (which was applied when jqGrid rendered the grid)
$('tr.ui-jqgrid-labels').sortable({ cancel: 'th:#element_id'});
// update the list of sortable item's, and exclude your target element
$('tr.ui-jqgrid-labels').sortable({ items: "th:not(#element_id)" });
Note: Cela fonctionne mieux si vos colonnes sont en être triée bord gauche ou à droite de la grille. Sinon, vous pourrez toujours trier d'autres colonnes autour d'eux.
Egalement: Assurez-vous de bien comprendre la différence entre les deux options triables (niveau de grille et niveau de colmodèle). Sur les options de la grille, "sortable: true" signifie que les colonnes peuvent être réorganisées par glisser-déposer. Sur les options de colmodel, "sortable: true" signifie que vous pouvez réorganiser les lignes en cliquant sur l'en-tête de la colonne. Si vous affectez la valeur de tri à true dans les options de la grille, les options colmodel ne seront pas ramenées en cascade. Cependant, sur le colmodel, le triable est vrai par défaut.
Merci pour votre réponse, si je dois mettre à jour ce projet, je vais vérifier! :) – bruno
Vous devriez au moins accepter le commentaire de Walters dans le même temps. C'est mieux alors "C'est impossible". –
Plusieurs ID peuvent-ils être appliqués au code ci-dessus pour la commande de plusieurs colonnes? – Sandy505