2010-08-01 5 views
2

J'ai une colonne jqGrid dont le nom peut changer (est une variable), comment puis-je obtenir le nom et le cacher?Comment cacher une colonne jqGrid de nom de variable?

Quelque chose le long des lignes du ci-dessous (qui ne fonctionne pas)

$('#tblGridName').jqGrid('hideCol',4); 

ou

var infoName = $('.ui-jqgrid-htable th:eq(4)').text(); 
$('#tblGridName').jqGrid('hideCol',infoName); 

Répondre

7

Vous pouvez simplement utiliser

var cm = myGrid.getGridParam("colModel"); 

pour obtenir le colModel actuel. Alors cm[4].name est le nom de la colonne. Donc

var colPos = 4; 
var myGrid = $('#tblGridName'); 
myGrid.jqGrid('hideCol', myGrid.getGridParam("colModel")[colPos].name); 

faites ce que vous avez besoin. Sachez que `.trim()` n'est pas supporté par tous les navigateurs.

2

Désolé, a trouvé la réponse presque tout de suite.

vient de modifier cette

var infoName = $('.ui-jqgrid-htable th:eq(4)').text(); 
$('#tblGridName').jqGrid('hideCol',infoName); 

être

var infoName = $.trim($('.ui-jqgrid-htable th:eq(4)').text()); 
$('#tblGridName').jqGrid('hideCol',infoName); 

Les meilleures solutions accueillies avec satisfaction.

+1

Vous devriez probablement utiliser la méthode '$ .trim()' de jQuery. 'var infoName = $ .trim ($ ('. ui-jqgrid-htable th: eq (4)'). text());' – user113716

+0

vous avez raison ... qui a jeté une erreur dans IE .. modifié. – bcm

Questions connexes