Javascript 使用jsTree生成Json访问级别

Javascript 使用jsTree生成Json访问级别,javascript,jstree,Javascript,Jstree,我正在为具有访问级别的应用程序创建前端。我找到了一个名为的库,但我很难找到已标记或未标记的复选框,我将在这里发布示例代码 我希望在单击save按钮时生成这个json输出,因为它将在ajax请求中发送 { "globais": [ { "Empresas": [ {"read": true}, {"create": false}, {"update": true}, {"dele

我正在为具有访问级别的应用程序创建前端。我找到了一个名为的库,但我很难找到已标记或未标记的复选框,我将在这里发布示例代码

我希望在单击save按钮时生成这个json输出,因为它将在ajax请求中发送

{
"globais": [
    {
        "Empresas": [
            {"read": true},
            {"create": false},
            {"update": true},
            {"delete": false}
        ]
    },
    {
        "filiais": [
            {"read": true},
            {"create": false},
            {"update": false},
            {"delete": false}
        ]
    }
],
"financeiro": [
    {
        "fornecedores": [
            {"read": true},
            {"create": true},
            {"update": true},
            {"delete": true}
        ]
    },
    {
        "lancamentos": [
            {"read": true},
            {"create": false},
            {"update": false},
            {"delete": false}
        ]
    }
  ]
}
$(函数(){
$('#jstree').jstree({
“插件”:[“复选框”]
}).bind(“loaded.jstree”,函数(事件、数据){
//您将获得两个参数-事件和数据-检查核心文档以获取详细描述
$(this.jstree(“open_all”);
})
});

  • 读取
  • 创造
  • 更新
  • 删除
  • 菲律宾人
    • 读取
    • 创造
    • 更新
    • 删除
  • 菲南塞罗
    • 福内切多尔
      • 读取
      • 更新
      • 删除
    • 兰萨门托斯
      • 读取
      • 创造
      • 更新
      • 删除

  • Salvar
    jsTree在树实例上提供了一个
    get_checked
    函数,该函数将已检查节点的列表作为节点id的数组返回。您可以将此列表与
    get_json
    函数返回的树的json表示一起使用,将结构解析为类似于您问题中的json

    <button type="button" onclick="getSelected()">Salvar</button>
    
    这将创建一个类似于下面的JSON结构

    {
      "Root": {
        "Globais": {
          "Empresas": {
            "Read": true,
            "Create": false,
            "Update": true,
            "Delete": false
          },
          "Filiais": {
            "Read": true,
            "Create": false,
            "Update": false,
            "Delete": false
          }
        },
        "Financeiro": {
          "Fornecedores": {
            "Read": true,
            "Create": true,
            "Update": true,
            "Delete": true
          },
          "Lançamentos": {
            "Read": true,
            "Create": false,
            "Update": false,
            "Delete": false
          }
        }
      }
    }
    
    {
      "Root": {
        "Globais": {
          "Empresas": {
            "Read": true,
            "Create": false,
            "Update": true,
            "Delete": false
          },
          "Filiais": {
            "Read": true,
            "Create": false,
            "Update": false,
            "Delete": false
          }
        },
        "Financeiro": {
          "Fornecedores": {
            "Read": true,
            "Create": true,
            "Update": true,
            "Delete": true
          },
          "Lançamentos": {
            "Read": true,
            "Create": false,
            "Update": false,
            "Delete": false
          }
        }
      }
    }