Changer de style de jqGrid
Je suis en utilisant jqGrid 3.5. Puis-je changer le style et l'apparence de la grille et de la rendre plus belle à l'aide de jQuery ou CSS personnalisé ou autre chose?
Vous devez vous connecter pour publier un commentaire.
L'une des grandes caractéristiques de jqGrid 3.5 est l'intégration avec jQuery UI Thèmes. Vous pouvez créer et/ou de sélectionner un thème à partir de ici. Puis il suffit d'ajouter une référence dans votre page:
Ainsi, vous obtenez une grille qui a l'air très bon, avec un minimum d'effort.
N'est que de résoudre votre problème ou vous avez besoin d'une refonte de la grille de regarder et se sentir encore plus?
Vous devez modifier l'en-tête de grille (à la volée).
C'est mon code
Le code HTML:
La jqGrid:
Afin de comprendre l'objet sur lequel je dois travailler, nous allons inspecter le code HTML généré par le code JavaScript:
...
Maintenant, la seule div avec un ID spécifié est le <div id="gview_jqgrid_ctrs"...
C'est pourquoi la suivante NE fonctionne PAS.
J'ai eu pour sélectionner le div parent et "rechercher dans" l'en-tête div, ayant la "ui-jqgrid-barre de titre" de la classe spécifiée. Puis j'ai enlevé l'original "ui-widget-d'en-tête" de la classe et de la remplacer par ma propre classe.
Où .jqgrid-d'en-tête est un style défini de cette façon.
J'ai testé et fonctionne. J'espère que ce sera utile...
$("#gview_jqgrid_ctrs .ui-jqgrid-titlebar").toggleClass("ui-widget-header jqgrid-header");
D'élaborer sur ce que Justin Ethier dit...
Depuis jqGrid utilise Jquery-UI thèmes, la meilleure façon de changer l'apparence de la grille serait de faire un custom thème.
Je recommande fortement que vous voyez si cela fonctionne pour vous avant de tenter de modifier le css après le fait... bien que vous pouvez le faire aussi bien, si le jquery-ui thème look est trop limitatives pour vous.
Je suis sûr que vous le pouvez.
Vous avez deux options:
Vous pouvez modifier le CSS de la grille.
Ceci est utile si vous avez à faire des petites modifications sur le design.
Les principales modifications ne devrait pas être fait de cette façon parce que la JQGrid de classes CSS sont vraiment dépendants les uns des autres.
Ou vous pouvez supprimer tout le style du HTML et de le remplacer par votre propre.
Par exemple vous avez un JQGrid comme:
HTML
jQuery
Cela va générer le code HTML comme ci-dessous:
Supprimer toutes les classes CSS:
etc.
Après que vous avez créé vos propres classes, vous pouvez ajouter à la structure HTML avec:
Je suggère d'utiliser les deux techniques.
J'ai modifié le css de jQGrid d'une manière nouvelle, qui permettra de soutenir bootastrap design aussi. Vous avez besoin des choses suivantes pour configurer cette jQGrid
1) Font Awesome Style
2) jQGrid Dernier bundle
Nouveau conçu jQGrid ressemblera à l'image ci-dessous
Nouveau full CSS et plein javascripts codage est inclus http://www.techdoubts.net/2015/11/working-jqgrid-responsive-css-boostrap.html ici.
Vous pouvez supprimer tous les ui-classes de grille:
Cela peut avoir des problèmes de performances si votre taille de la grille est grande.