2017-05-31 2 views
1

Dieses erste Bild ist Ergebnis mithilfe von jqGrid Baumraster. Das Symbol ist standardmäßig gesetzt, kein Blattgegenstand beginnt mit "Invertiertes Dreieck", Blattgegenstand beginnt mit "o".Kann jqgrid Baumraster benutzerdefinierte Symbol zeigen

enter image description here

Wie kann ich das Display Ergebnis wie das zweite Bild zu machen, ich anderes Symbol für jede Zeile einstellen kann?

enter image description here

Antwort

1

Die Eingangsdaten des TreeGrid icon Eigenschaft mit dem Klassennamen enthalten, die das Symbol des Baumes Blatt angeben. Der Wert der Knoteneigenschaften sollte zwei Klassen enthalten: eine für den erweiterten Knoten und eine weitere für den minimierten Knoten. Zum Beispiel

[ 
    { ... 
     level: "0", parent: "null", isLeaf: false, expanded: true, loaded: true, 
     icon: "ui-icon-folder-open,ui-icon-folder-collapsed" }, 
    { ... 
     level: "1", parent: "1", isLeaf: true, expanded: false, loaded: true, 
     icon: "ui-icon-flag" }, 
    { ... 
     level: "2", parent: "2", isLeaf: true, expanded: false, loaded: true, 
     icon: "ui-icon-star" }, 
    ... 
] 

Die Demo https://jsfiddle.net/OlegKi/4svafpub/3/ zeigt die TreeGrid, die

enter image description here

Sie haben noch keine Details veröffentlicht zeigt, was Sie tun. Keine Version von jqGrid, die Sie verwenden, keine Informationen über die Abzweigung von jqGrid (free jqGrid, kommerzielle Guriddo jqGrid JS oder ein altes jqGrid in Version < = 4.7). Es ist unbekannt, welches CSS-Framework Sie verwenden: jQuery UI oder Bootstrap und welches Icon-Set (jQuery UI-Symbole, Font Awesome 4.x, Symbole von Bootstrap ...). Die genaue Umsetzung Ihrer Anforderungen hängt von den Informationen ab. In jedem Fall müssen Sie die Symbolklassen aus der Gruppe von Symbolen auswählen, die Sie verwenden, oder Sie müssen benutzerdefinierte CSS-Klassen definieren, die Sie für TreeGrid-Knoten und -Blätter verwenden, und CSS-Regeln definieren, die alle erforderlichen angeben CSS Eigenschaften: background-image, background-position und so weiter. Als Ergebnis können Sie jedes Symbol anzeigen, das Sie benötigen.

AKTUALISIERT: Es scheint mir, dass icon nur für Blätter verwendet wird, nicht für Knoten wie oben beschrieben.

2 AKTUALISIERT: ich einige Änderungen im Code des freien jqGrid gemacht und jetzt kann man die Symbole für die Knoten von TreeGrid angeben. Der gleiche Code mit aktualisierte Version des freien jqGrid zeigt enter image description here

die Demo Siehe https://jsfiddle.net/OlegKi/4svafpub/4/

+0

ich frei jqGrid und die Version 4.5.2. Ich plane jQuery UI-Symbole verwenden. Und ich habe versucht, deiner Demo zu folgen. Ich denke, das kann aktuelle Anforderungen erfüllen. Vielen Dank ~ – Lisa

+0

@Lisa: Gern geschehen! "free jqGrid" ist der Name auf dem Produkt. "jqGrid" existiert nur bis zur Version 4.7. Danach änderte Tony Tomov den Namen des Produkts, das er zu "Guriddo jqGrid JS" entwickelte (siehe [hier] (http://www.trirand.com/blog/?p=1438)), änderte die Lizenzvereinbarung und machte das Produkt kommerziell (siehe die Preise [hier] (http://guriddo.net/?page_id=103334)). Danach habe ich begonnen, die Abzweigung von jqGrid unter dem Namen ["free jqGrid"] zu entwickeln (http://guriddo.net/?page_id=103334). Sie verwenden also derzeit eine Retro-Version (4 Jahre alt) des Produkts, die nicht existiert und nicht unterstützt wird. – Oleg

+0

@Lisa: Ich empfehle Ihnen, auf das kostenlose jqGrid 4.14.1 zu aktualisieren, das viele neue Funktionen, Fehlerbehebungen und Leistungsverbesserungen enthält. Es ist kompatibel zu jqGrid 4.5.2. Sie können freie jqGrid-Dateien direkt von CDN laden (siehe [der Wiki-Artikel] (https://github.com/free-jqgrid/jqGrid/wiki/Access-free-jqGrid-from-different-CDNs)). Ich empfehle Ihnen, [den Artikel] (https://free-jqgrid.github.io/getting-started/index.html) zusätzlich zu lesen. – Oleg

Verwandte Themen