Mettre en surbrillance les lignes en fonction de la valeur d'une case à cocher
Vous recherchez une solution pour mettre en surbrillance les lignes dans un jqGrid en fonction de la valeur d'une case à cocher. Cette fonctionnalité est facilement réalisable à l'aide du rappel rowattr, qui vous permet de manipuler les attributs de lignes individuelles lors de l'initialisation de la grille.
Implémentation du rappel rowattr
Le rappel rowattr est un fonction qui prend un seul argument, rd, représentant les données de la ligne. En examinant le ème objet, vous pouvez déterminer s'il convient de mettre en évidence une ligne particulière. Dans votre cas, si l'attribut GroupHeader est défini sur « 1 », vous pouvez renvoyer une classe CSS à appliquer à la ligne, telle que :
gridview: true, rowattr: function (rd) { if (rd.GroupHeader === "1") { // Adjust according to your data return {"class": "myAltRowClass"}; } }
Améliorations supplémentaires
Pour améliorer l'efficacité et l'organisation de la base de code, tenez compte des recommandations suivantes :
Exemple d'utilisation
En appliquant les recommandations ci-dessus à votre code, vous obtiendrez un code simplifié définition :
colModel: [ {name: 'TypeID', index: 'TypeID', width: 350, hidden: true, ... }, {name: 'Order1', index: 'Order1', template: myTextareaTemplate }, {name: 'Order2', index: 'Order2', template: myTextareaTemplate }, ... // Other columns //If the GroupHeader is true, the row has a yellow background {name: 'GroupHeader', index: 'GroupHeader', width: 100, template: myCheckboxTemplate}, {name: 'IsGroup', index: 'IsGroup', template: myCheckboxTemplate } ], cmTemplate: {align: 'center', sortable: false, editable: true, width: 80},
En incorporant ces techniques, vous pouvez implémenter efficacement la mise en évidence des lignes en fonction des valeurs des cases à cocher et améliorer la fonctionnalité globale de votre jqGrid.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!