2017-05-31 112 views
1

この最初の画像はjqGridツリーグリッドを使用した結果です。アイコンはデフォルトで設定され、非リーフアイテムは「反転トライアングル」で始まり、リーフアイテムは「o」で始まります。jqgridツリーグリッドはユーザー定義のアイコンを表示できます

enter image description here

は、どのように私は2番目の絵のような表示結果が、私は行ごとに異なるアイコンを設定することができますように設定することができますか?

enter image description here

答えて

1

TreeGridの入力データは、ツリーの葉のアイコンを指定したクラス名とiconプロパティを含めることができます。ノードプロパティの値には、という2つのクラスが含まれている必要があります.1つは展開ノード用で、もう1つは折りたたまれたノード用です。例えば

[ 
    { ... 
     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" }, 
    ... 
] 

デモhttps://jsfiddle.net/OlegKi/4svafpub/3/は、あなたが何をするかいずれかの詳細を掲載しません

enter image description here

を表示TreeGridを示しています。 jqGridのフォークに関する情報はありません(free jqGrid、コマーシャルGuriddo jqGrid JS、バージョン< = 4.7の古いjqGrid)。どのCSSフレームワークを使用しているかわからない:jQuery UIまたはBootstrapとどのアイコンが設定されているか(jQuery UIアイコン、Font Awesome 4.x、Bootstrapのグリフアイコン...)。要件の正確な実装は、情報に依存します。どのような方法であれ、使用するアイコンセットからアイコンクラスを選択するか、カスタムCSSクラスを定義する必要があります。これはTreeGridノードとリーフに使用し、CSSルールを定義する必要があります。 CSSプロパティ:background-imagebackground-positionなど。結果として、必要なアイコンを表示することができます。

更新:iconはリーフにのみ使用され、前述のようにノード用ではないようです。

UPDATED 2:無料のjqGridのコードにいくつか変更を加えましたが、今ではTreeGridのノードのアイコンを指定できます。無料jqGridの更新バージョンと同じコードが enter image description here

はデモhttps://jsfiddle.net/OlegKi/4svafpub/4/

+0

私は自由jqGrid使用を参照してください表示され、バージョンは4.5.2です。 jQueryのUIアイコンを使用する予定です。そして私はあなたのデモに従ってみる。私はこれが現在の要求を満たすことができると思う。ありがとうございました〜 – Lisa

+0

@Lisa:あなたは大歓迎です! "free jqGrid"は製品の名前です。 "jqGrid"はバージョン4.7までしか存在しません。その後Tony Tomovは、彼が開発した製品の名前を "Guriddo jqGrid JS"([ここ](http://www.trirand.com/blog/?p=1438)を参照)に変更し、ライセンス契約を変更し、製品のコマーシャルを作成しました(価格[ここ](http://guriddo.net/?page_id=103334)参照)。その後、私は["free jqGrid"(http://guriddo.net/?page_id=103334)という名前でjqGridのフォークを開発しました。したがって、存在していない、サポートされていない現在レトロバージョン(4歳)の製品を使用しています。 – Oleg

+0

@Lisa:無料のjqGrid 4.14.1にアップグレードすることをお勧めします。多くの新機能、バグ修正、パフォーマンスの向上があります。 jqGrid 4.5.2と互換性があります。無料のjqGridファイルをCDNから直接読み込むことができます([wiki記事](https://github.com/free-jqgrid/jqGrid/wiki/Access-free-jqGrid-from-different-CDNs)を参照)。私は[記事](https://free-jqgrid.github.io/getting-started/index.html)をさらに読むことをお勧めします。 – Oleg

関連する問題