Kendo 的数据源支持本地数据源(JavaScript 对象数组),或者远程数据源(XML, JSON, JSONP),支持CRUD操作(创建,读取,更新和删除操作),并支持排序,分页,过滤,分组和集合等。

准备开始

下面创建一个本地数据源。

1 var movies = [ {
2       title: "Star Wars: A New Hope",
3       year: 1977
4    }, {
5      title: "Star Wars: The Empire Strikes Back",
6      year: 1980
7    }, {
8      title: "Star Wars: Return of the Jedi",
9      year: 1983
10    }
11 ];
12 var localDataSource = new kendo.data.DataSource({data: movies});

创建一个远程数据源 (Twitter)

1 var dataSource = new kendo.data.DataSource({
2     transport: {
3         read: {
4             // the remote service url
5             url: "http://search.twitter.com/search.json",
6  
7             // JSONP is required for cross-domain AJAX
8             dataType: "jsonp",
9  
10             // additional parameters sent to the remote service
11             data: {
12                 q: "html5"
13             }
14         }
15     },
16     // describe the result format
17     schema: {
18         // the data which the data source will be bound to is in the "results" field
19         data: "results"
20     }
21 });

绑定数据源到UI组件

Kendo UI组件很多都支持数据绑定 ,UI组件绑定的数据源可以在配置UI组件时设置,或是多个UI组件共享同一个数据源。

创建UI组件时设置DataSource属性

1 $("#chart").kendoChart({
2     title: {
3         text: "Employee Sales"
4     },
5     dataSource: new kendo.data.DataSource({
6         data: [
7         {
8             employee: "Joe Smith",
9             sales: 2000
10         },
11         {
12             employee: "Jane Smith",
13             sales: 2250
14         },
15         {
16             employee: "Will Roberts",
17             sales: 1550
18         }]
19     }),
20     series: [{
21         type: "line",
22         field: "sales",
23         name: "Sales in Units"
24     }],
25     categoryAxis: {
26         field: "employee"
27     }
28 });

使用共享的远程数据源

1 var sharableDataSource = new kendo.data.DataSource({
2     transport: {
3         read: {
4             url: "data-service.json",
5             dataType: "json"
6         }
7     }
8 });
9  
10 // Bind two UI widgets to same DataSource
11 $("#chart").kendoChart({
12     title: {
13         text: "Employee Sales"
14     },
15     dataSource: sharableDataSource,
16     series: [{
17         field: "sales",
18         name: "Sales in Units"
19     }],
20     categoryAxis: {
21         field: "employee"
22     }
23 });
24  
25 $("#grid").kendoGrid({
26     dataSource: sharableDataSource,
27         columns: [
28         {
29             field: "employee",
30             title: "Employee"
31         },
32         {
33             field: "sales",
34             title: "Sales",
35             template: '#= kendo.toString(sales, "N0") #'
36     }]
37 });

这个例子使用了模板 template ,模板的用法参见后面的文章。

Kendo UI开发教程(6): Kendo DataSource 概述的更多相关文章

  1. Kendo UI开发教程(9): Kendo UI Validator 概述

    Kendo UI Validator 支持了客户端校验的便捷方法,它基于HTML 5 的表单校验功能,支持很多内置的校验规则,同时也提供了自定义规则的便捷方法. 完整的Kendo UI 的Valida ...

  2. Kendo UI开发教程(16): Kendo MVVM 数据绑定(五) Events

    本篇和Kendo UI开发教程(14): Kendo MVVM 数据绑定(三) Click类似,为事件绑定的一般形式.Events绑定支持将ViewModel的方法绑定到DOM元素的事件处理(如鼠标事 ...

  3. Kendo UI开发教程(7): Kendo UI 模板概述

    Kendo UI 框架提供了一个易用,高性能的JavaScript模板引擎.通过模板可以创建一个HTML片段然后可以和JavaScript数据合并成最终的HTML元素. Kendo 模板侧重于UI显示 ...

  4. Kendo UI开发教程(8): Kendo UI 特效概述

    Kendo UI Fx 提供了一个丰富,可扩展,性能经过优化的工具集合用来完成HTML元素的过渡显示.每种特效近可能的使用CSS Transition ,对于一些老版本浏览器使用修改属性的方法作为补充 ...

  5. Kendo UI开发教程(22): Kendo MVVM 数据绑定(十一) Value

    Value绑定可以把ViewModel的某个属性绑定到DOM元素或某个UI组件的Value属性.当用户修改DOM元素或UI组件的值时,绑定的ViewModel的值也随之发生改名.同样,如果ViewMo ...

  6. Kendo UI开发教程(21): Kendo MVVM 数据绑定(十) Source

    Source绑定可以把ViewModel的值和由Kendo模板定义的目标元素绑定,如果ViewModel的值发生变化,被绑定的目标元素也随之发生变化.模板由属性data-template指定,它的值为 ...

  7. Kendo UI开发教程(20): Kendo MVVM 数据绑定(九) Text

    Text绑定可以使用ViewModel来设置DOM元素的文本属性,如果需要设置input,textarea,或select的显示,需要使用value属性. 1 <span data-bind=& ...

  8. Kendo UI开发教程(14): Kendo MVVM 数据绑定(三) Click

    Click绑定可以把由ViewModel定义的方法不绑定到目标DOM的click事件.当点击目标DOM元素时触发ViewModel的对应方法.例如: 使用Click绑定 1 <div id=&q ...

  9. [置顶] Kendo UI开发教程: Kendo UI 示例及总结

    前面基本介绍完Kendo UI开发的基本概念和开发步骤,Kendo UI的示例网站为http://demos.kendoui.com/ ,包含了三个部分 Web DemoMobile DemoData ...

随机推荐

  1. iframe的各项參数

    iframe的各项參数: <iframe src="test.jsp" width="100″ height="50″ frameborder=" ...

  2. server正式的环境性能测试nginx-php 指着寻求突破的表现

    因为我是第三级城市语言.无法接触到更牛接触逼公司或环境.这是你母亲的现场环境摸过几次.截至完毕,测试已设法提高空间. 公司须要的站点执行环境.不能由于我这边的瓶颈而阻碍了公司进行,希望各位大能能不吝惜 ...

  3. 移动小bug

    1. 在三星note2,小米2,页面加载后,页面有黑块. 那么提高被盖住的部分z-index. 2. iphone5 ,ios7.0.4,上文字显示不出 那么就先hide,setTimeout几百毫秒 ...

  4. installshield 32位打包和64位打包的注意事项

    原文:installshield 32位打包和64位打包的注意事项 32/64位问题要把握几点:1. 明确你的产品是否需要区分32/64位2. 明确你的产品中是否有32/64位的服务注册3. 了解In ...

  5. Windows 7的 磁盘管理中,某个磁盘或分区,突然变成只读。

    1.今天突然发现E盘无法创建文件夹.文件,也不可以改,感觉像是变成只读 . 2.我的电脑 -> 计算机管理 -> 存储 -> 磁盘管理,发现E盘下面标记着只读两个字. 3.由于我的E ...

  6. weblogic生产、开发模式互转

    生产模式与开发模式转换: 1.生产模式-->开发模式     将%DOMAIN_HOME%\config\config.xml文件中<production-mode-enabled> ...

  7. Oracle中注意用户的访问权限

    新增表.序列.存储过程等,要注意用户(例如System)的权限.如果在增删改查过程中出现数据库读写权限的报错,则在建表(或者序列.存储过程等)时,在脚本前面加 GRANT CREATE TABLE T ...

  8. 大数据时代:基于微软案例数据库数据挖掘知识点总结(Microsoft 聚类分析算法)

    原文:(原创)大数据时代:基于微软案例数据库数据挖掘知识点总结(Microsoft 聚类分析算法) 本篇文章主要是继续上一篇Microsoft决策树分析算法后,采用另外一种分析算法对目标顾客群体的挖掘 ...

  9. web浏览器中javascript

    1.异步载入一个js代码function loadasync(url) { var head = document.getElementsByTagName("head")[0]; ...

  10. 【MS SQL】查看任务执行进度

    原文:[MS SQL]查看任务执行进度 备份或还原数据库时,我一般是用MS SQL工具向导来进行,由于工具向导没有显示任务执行过程的状态, 如果数据库比较大执行时间较长的话,对任务啥时候执行完成比较迷 ...