gpt4 book ai didi

jstree - 禁用从一个级别到另一个级别的拖放

转载 作者:行者123 更新时间:2023-12-01 11:32:10 25 4
gpt4 key购买 nike

我有一个由 形成的树 View ,我想禁用从一个级别到另一个级别的拖放节点。让我们举个例子:

  • 分店 1
  • 叶 1
  • 叶 2
  • 叶 3
  • 分行 2
  • 叶 4
  • 叶 5
  • 分店 3
  • 叶 6
  • 叶 7
  • 分店 4
  • 叶 8


  • 我希望用户能够移动分支/重新排序叶子和重新排序分支,但不能将 leaf 提升为 branch 或将 branch 降级为 leaf

    我已经开始查看文件 jstree.dnd.js 以更改行为,但不幸的是它超出了我的范围。

    我怎样才能做到这一点?

    最佳答案

    您可以使用 jstree types 插件。只需将它包含在您的配置 plugins 数组中。然后相应地配置您的节点(要为节点分配类型,请确保它在 JSON 中具有 type 属性)。

    这是一个示例配置:

    "types" : {
    "#" : { // the root node can have only "branch" children
    "valid_children" : ["branch"]
    },
    "branch" : { // any "branch" can only have "leaf" children
    "valid_children" : ["leaf"]
    },
    "leaf" : { // "leaf" typed nodes can not have any children
    "valid_children" : []
    }
    },

    这是一个演示:
    http://jsfiddle.net/DGAF4/560/

    您可以在 repo 和 docs 页面上阅读有关类型插件的更多信息。

    请记住,您可以使用 core.check_callback 函数并避免使用 types 插件 - 它会给您完全手动控制,但使用起来有点复杂。如果由于某种原因上述方法对您不起作用,我可以详细说明。

    关于jstree - 禁用从一个级别到另一个级别的拖放,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31310977/

    25 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com