教你用JSON轻松实现Kendo UI Treeview序列化

71 篇文章 2 订阅
15 篇文章 0 订阅

转自:http://www.evget.com/article/2013/8/27/19479.html

概述:本文教你用JSON轻松实现Kendo UI treeview 序列化的方法,将大大提升你的开发效率。
Treeview是界面设计中经常要用到的控件,那你是否想过将界面开发工具  Kendo UI  中的treeview序列化呢?将它存储之后就可以随时加载调用,可以大大提升你的开发效率。本文将为你展示如何用一段jQuery代码轻松将 treeview 序列化。
注: Kendo UI  Telerik  推出的基于 jQuery HTML5 UI开发框架 ,提供数据可视化和服务器封装解决方案,开发面向桌面、移动设备的应用程序,以其优良的性能深受国内外开发人员喜爱。>> 免费下载
下面这个例子将一列复选框以treeview控件展示层级数据。用户通过点击复选框选择数据项,并将选项保存为优先设置的一部分。这些选项被保存之后,我们仍然需要从数据中进行加载。


Treeview 的div部分:
<
body>
  <divid="treeview"></div>
</body>

jQuery代码也相当简单:
var ds = new kendo.data.HierarchicalDataSource({
    data: [{"text":"Item 1","id":"1","expanded":true,
      "checked":true,"items":[{"text":"Item 1.1",
      "id":"2","checked":true},{"text":"Item 1.2",
      "id":"3","checked":true},{"text":"Item 1.3",
      "id":"4","checked":true}]},{"text":"Item 2",
      "id":"5","expanded":true,"items":[{"text":"Item 2.1",
      "id":"6","checked":true},{"text":"Item 2.2",
      "id":"7"},{"text":"Item 2.3","id":"8",}]},
      {"text":"Item 3","id":"9"}]
});


var tv = $("#treeview").kendoTreeView({
    checkboxes: {
        checkChildren: true
    },
    dataSource: ds
}).data("kendoTreeView");


function treeToJson(nodes) { 


    return $.map(nodes, function(n, i) {
     
        var result = {text: n.text, id: n.id, expanded: n.expanded, checked: n.checked};              
 
        if (n.hasChildren)
            result.items = treeToJson(n.children.view());
 
        return result;
    });
}
 
var json = treeToJson(tv.dataSource.view());
console.log(JSON.stringify(json));

需要说明的一点是,函数 treetoJson()将遍历所有树节点并以JSON的形式返回数据数组。你可以在JS Bin中测试以上代码,但是要确保通过"Add Library"将"Kendo UI"加进去。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值