Maison >développement back-end >tutoriel php >Comment mettre en évidence les lignes jqGrid en fonction des valeurs des cases à cocher ?

Comment mettre en évidence les lignes jqGrid en fonction des valeurs des cases à cocher ?

Barbara Streisand
Barbara Streisandoriginal
2024-12-12 11:32:09689parcourir

How to Highlight jqGrid Rows Based on Checkbox Values?

Mise en surbrillance des lignes lorsque les cases à cocher sont vraies

Problème :

Lorsque vous travaillez avec un jqGrid, il peut être souhaitable de mettre en évidence les lignes où un champ de case à cocher a été marqué comme Vrai.

Solution :

Pour y parvenir, vous pouvez utiliser la fonction de rappel rowattr dans la version 4.3.2 ou supérieure de jqGrid. Ce rappel vous permet de personnaliser les attributs des lignes lors du remplissage de la grille, vous permettant ainsi d'attribuer une classe CSS unique aux lignes en surbrillance.

Exemple de code :

rowattr: function (rd) {
    if (rd.GroupHeader === "1") { // Verify that the testing condition aligns with your usage
        return { "class": "myAltRowClass" };
    }
}

CSS :

La classe CSS myAltRowClass doit définir la couleur d'arrière-plan du élément en surbrillance. lignes.

Code amélioré avec des modèles de colonnes :

Pour optimiser davantage le code, vous pouvez exploiter les modèles de colonnes pour définir des propriétés communes et réduire les répétitions. Voici un exemple :

cmTemplate: { align: 'center', sortable: false, editable: true, width: 80 },

myCheckboxTemplate = { formatter: 'checkbox', edittype: 'checkbox', type: 'select', editoptions: { value: "1:0" } },

colModel: [
    // Additional columns...

    { name: 'GroupHeader', index: 'GroupHeader', width: 100, template: myCheckboxTemplate },
    { name: 'IsGroup', index: 'IsGroup', template: myCheckboxTemplate },
]

Ce code amélioré utilise le cmTemplate pour définir les propriétés partagées et le myCheckboxTemplate pour les champs de case à cocher, rendant le code plus lisible et maintenable.

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!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn