Heim > Web-Frontend > js-Tutorial > Wie hebe ich Zeilen in jqGrid basierend auf dem Kontrollkästchenwert hervor?

Wie hebe ich Zeilen in jqGrid basierend auf dem Kontrollkästchenwert hervor?

Susan Sarandon
Freigeben: 2024-11-07 06:41:03
Original
572 Leute haben es durchsucht

How to Highlight Rows in jqGrid Based on Checkbox Value?

Hervorheben von Zeilen basierend auf dem Kontrollkästchenwert

In jqGrid können Sie Zeilen hervorheben, in denen ein bestimmtes Kontrollkästchen wahr ist, und Ihnen so ein visuelles Feedback geben, wenn dies sicher ist Bedingungen erfüllt sind. Dies kann durch Rückrufe und CSS-Styling erreicht werden.

Implementierung:

  1. Rowattr-Rückruf: Nutzen Sie den Rowattr-Rückruf, um benutzerdefinierte Attribute festzulegen zu Reihen. In Ihrem Fall können Sie eine CSS-Klasse für hervorgehobene Zeilen definieren.
rowattr: function (rd) {
    if (rd.GroupHeader === "1") { // assuming your checkbox column is named "GroupHeader"
        return {"class": "myAltRowClass"};
    }
}
Nach dem Login kopieren
  1. CSS-Styling: Definieren Sie eine CSS-Klasse, um das Erscheinungsbild hervorgehobener Zeilen zu steuern. Sie könnten beispielsweise Folgendes verwenden:
.myAltRowClass {
    background-color: #ffff00;
}
Nach dem Login kopieren

Alternative Lösung:

Zusätzlich zum Rowattr-Callback bietet jqGrid Version 4.3.2 eine Neue Funktion namens Gridview, die die Leistung verbessert und eine übersichtlichere Möglichkeit zum Hervorheben von Zeilen bietet.

gridview: true,
rowattr: function (rd) {
    if (rd.GroupHeader === "1") { // assuming your checkbox column is named "GroupHeader"
        return {"class": "myAltRowClass"};
    }
}
Nach dem Login kopieren

Spaltenvorlagen:

Um Ihren Code zu optimieren, sollten Sie Spaltenvorlagen verwenden um gemeinsame Eigenschaften für mehrere Spalten zu definieren. Dies vereinfacht Ihre Spaltendefinitionen und erleichtert deren Pflege.

cmTemplate: {align: 'center', sortable: false, editable: true, width: 80},
...
colModel: [
    {name: 'TypeID', ...},
    {name: 'Order1', template: myTextareaTemplate},
    // ...
]
Nach dem Login kopieren

Beispiel:

#maingrid").jqGrid({
    rowattr: function (rd) {
        if (rd.GroupHeader === "1") { // assuming your checkbox column is named "GroupHeader"
            return {"class": "myAltRowClass"};
        }
    },
    cmTemplate: {align: 'center', sortable: false, editable: true, width: 80},
    colModel: [
        {name: 'TypeID', ...},
        {name: 'Order1', template: myTextareaTemplate},
        // ...
    ]
});
Nach dem Login kopieren

Das obige ist der detaillierte Inhalt vonWie hebe ich Zeilen in jqGrid basierend auf dem Kontrollkästchenwert hervor?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage