【问题标题】:Can jqgrid tree grid show user-defined iconjqgrid树网格可以显示用户定义的图标吗
【发布时间】:2017-10-31 19:56:30
【问题描述】:

这第一张图片是使用 jqGrid 树网格的结果。图标为默认设置,非叶子项以“倒三角形”开头,叶子项以“o”开头。

如何设置让显示结果像第二张图片,每行可以设置不同的图标?

【问题讨论】:

    标签: jqgrid treegrid


    【解决方案1】:

    TreeGrid 的输入数据可以包含带有类名的icon 属性,指定树叶的图标。节点属性的值应包含 两个 类:一个用于展开节点,另一个用于折叠节点。例如

    [
        { ...
            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/ 演示了 TreeGrid,它显示

    您没有发布任何详细信息。没有您使用的 jqGrid 版本,没有关于 jqGrid 分支的信息(free jqGrid、商业 Guriddo jqGrid JS 或版本 background-image、background-position 等。结果,您将能够显示您需要的任何图标。

    更新:在我看来icon 将仅用于叶子,而不是如上所述的节点。

    更新 2: 我对 free jqGrid 的代码做了一些更改,现在可以为 TreeGrid 的节点指定图标。与更新版本的免费 jqGrid 显示相同的代码

    查看演示https://jsfiddle.net/OlegKi/4svafpub/4/

    【讨论】:

    • 我用的是免费的jqGrid,版本是4.5.2。我计划使用 jQuery UI 图标。我已经尝试关注你的演示。我认为这可以满足当前的要求。非常感谢~
    • @Lisa:不客气! “free jqGrid”是产品上的名称。 “jqGrid”只存在到版本 4.7。之后,Tony Tomov 更改了产品名称,他将其开发为“Guriddo jqGrid JS”(参见here),更改了许可协议并使产品商业化(参见价格here)。之后我开始开发名为"free jqGrid" 的jqGrid 的fork。因此,您使用的是当前不存在且不受支持的产品的复古版本(4 岁)。
    • @Lisa:我建议您升级到免费的 jqGrid 4.14.1,它有许多新功能、错误修复和性能改进。它与 jqGrid 4.5.2 兼容。您可以直接从 CDN 加载免费的 jqGrid 文件(请参阅the wiki article)。我建议您另外阅读the article
    • @Lisa:请参阅我的回答的 UPDATED 2 部分。
    • 感谢您的解释和演示。我将尝试更改免费的 jqGrid 4.14.1。真的谢谢!顺便说一句,你能帮我看看这个关于在一个树网格单元格中制作多复选框的问题吗?stackoverflow.com/questions/44281427/…
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2023-04-03
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多