2

jqGridツリーグリッドのすべての行は同じフォントサイズです。子を持たない行のフォントサイズを小さくするには? これにrowattrを使用するためにjqgrid treegridの最初の行のテキストを太字にする方法でOlegの素晴らしい答えを使用しようとしました。行に子がないことを rowattr でデデクトする方法が見つかりませんでした。

現在の特定のケースでは、すべてのリーフが第 3 レベルにあります。したがって、この場合、第 3 レベル全体のフォント サイズを小さくすることができます。rowattr でツリーグリッドのネストレベルを見つける方法は?

ツリーグリッドは次のように定義されます

        var treegrid = $("#tree-grid");
        treegrid.jqGrid({
            url: '/Store/GridData',
            datatype: "json",
            mtype: "POST",
            height: "auto",
            loadui: "disable",
            treeGridModel: "adjacency",
            colModel: [
                    { name: "id", width: 1, hidden: true, key: true },
                    { name: "menu", classes: "treegrid-column", label: "Product tree" },
                    { name: "url", width: 1, hidden: true }
                ],

            gridview: true,
            rowattr: function (rd) {
             // todo: decrease font size for leaf rows.                
            if (rd.parent === "-1" ) {
                return {"class": "no-parent"};
                }
            },
            autowidth: true,
            treeGrid: true,
            ExpandColumn: "menu",
            rowNum: 2000,
            ExpandColClick: true,
            onSelectRow: function (rowid) {
                var treedata = treegrid.jqGrid('getRowData', rowid);
                window.location = treedata.url;
            }
        }
      );
4

1 に答える 1

2

私はtreegridを使用したことがありません.Olegによって提供されたサンプルから、グリッドデータには item があるようisLeafです. 確認する必要があると思いますrd.isLeaf ここでデモを見る ここで使用されているデータがあります(最初の行)

{id: "1", name: "Cash", num: "100", debit: "400.00", credit: "250.00", balance: "150.00", enbl: "1", level: "0", parent: "null", isLeaf: false, expanded: true, loaded: true, icon: "ui-icon-carat-1-e,ui-icon-carat-1-s"},
于 2013-03-25T03:39:27.167 に答える