jsTree 使用 JSON 数据绑定节点

jsTree 使用 JSON 数据绑定节点

编程代码以 C# 为例

JSON 模型

模型结构一

public class JsonModel
{
    public string id { get; set; }
    public string text { get; set; }
    public string icon { get; set; }
    public StateForJsonModel state { get; set; }
    public List<JsonModel> children { get; set; }
    public object li_attr { get; set; }
    public object a_attr { get; set; }
}

public class StateForJsonModel
{
    public bool opened { get; set; }
    public bool disabled { get; set; }
    public bool selected { get; set; }
}

这种模型里的所有字段都可不填。

模型结构二

public class JsonModel
{
    public string id { get; set; }
    public string parent { get; set; }
    public string text { get; set; }
    public string icon { get; set; }
    public StateForJsonModel state { get; set; }
    public object li_attr { get; set; }
    public object a_attr { get; set; }
}

public class StateForJsonModel
{
    public bool opened { get; set; }
    public bool disabled { get; set; }
    public bool selected { get; set; }
}

这种模型里的 idparent 为必填。

注:

  • id:节点的 id(不可以重复)
  • text:节点显示文本
  • icon:节点使用的图标
  • children:子节点
  • opened:节点是否展开

其他属性为验证。

生成 Json

// 以模型一为例
public ActionResult ActionName()
{
    List<JsonModel> jsons = new List<JsonModel>();

    // 添加节点
    JsonModel jsonModel1 = new JsonModel();
    jsons.Add(jsonModel1);

    // 添加含有子节点的节点
    List<JsonModel> jsons1 = new List<JsonModel>();
    JsonModel jsonModel2 = new JsonModel();
    jsonModel2.children = jsons1;
    jsons.Add(jsonModel2);

    return Json(jsons, JsonRequestBehavior.AllowGet);
}

前端绑定

JS 绑定

$('jstree_div').jstree({
    core : {
        data : {
            type : "json",
            url : "GetJsonUrl"
        }
    }
});

注:

  • GetJsonUrl:获取Json Url 地址或 Json 文件地址

参考

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值