1 准备工作

引入JS文件和CSS文件

<link href="js/kendoui/styles/kendo.common.min.css" rel="stylesheet" />

<link href="js/kendoui/styles/kendo.silver.min.css" rel="stylesheet" />

<script src="js/kendoui/js/jquery.min.js"></script>

<script src="js/kendoui/js/kendo.all.min.js"></script>

2 数据源

2.1 创建数据源

· var dataSource = new kendo.data.DataSource({

……

});

2.2 数据源常用配置项

· data:数据,数据类型有json和xml

data: [{"userId":63,"userNo":"test1","userName":"用户"}]

· transport:加载或保存数据

transport : {

read : {

url : "userManager?action=getUserInfosByDeptId",

dataType : "json"

},

update : {

url : "userManager?action=test",

dataType : "jsonp"

},

create : {

//添加数据,参考update方法

},

destroy : {

//删除数据,参考update方法

},

parameterMap : function(data, type) {

switch (type) {

case "read": {

return {

deptId : 0

};

}

default: {

return {

//返回修改的json

userinfo : kendo.stringify(data.models)

};

}

}

}

}

· schema :数据源的结构,可对每个字段进行配置

schema : {

model : {

id : "userId",

fields : {

userNo : {

editable : false,//是否需要编辑

nullable : true,//是否允许为空

validation : {required : true}//验证

}

}

}

2.3 常用方法

· dataSource.read()//重新读取数据源

· dataSource.sync()//保存数据源的修改

· dataSource.data()//获取数据源的数据

· dataSource.data([{ name: "John Doe" }])//设置数据源的数据

3 Grid

3.1 创建Grid

$("#grid").kendoGrid({

……

});

3.2 Grid常用配置项

l dataSource:dataSource,//数据源

l groupable: true,//是否允许分组

l editable : true,//是否允许修改修改模式“inline”行内模式,"popup"弹窗模式

l filterable :true//是否开启筛选

l columnMenu: true//是否开启列菜单

l reorderable: true//是否允许对列进行排序(手动拖拽列)

l sortable: true//是否允许排序

l selectable : true,//是否允许选择 “multiple row”:多行选择, "multiple cell" 多单元格选择,"row"单行,"cell"单元格

l pageable:true/是否分页

pageable: {

refresh: true,//刷新按钮

pageSizes: 10//每页大小

buttonCount: 5//页码按钮数量

}

l columns//列

columns: [{field: "ContactName",//字段名

title: "Contact Name",//列名

Width: 200, //列宽

Format:"yyyy-mm-dd"

editor : stratDateEditor//自定义编辑

}]

function stratDateEditor(container, options) {

$(

'<input  type="text" name="startDate" data-bind="value:startDate">')

.appendTo(container).kendoDateTimePicker({});

}

3.3 Grid 常用事件

change : function(e) {

//获取选中行的数据

this.dataItem(this.select());

}

3.4 模板Template

//行模板

rowTemplate: kendo.template($("#rowTemplate").html())

//间隔行模板

altRowTemplate: kendo.template($("#altRowTemplate").html())

<script id="rowTemplate" type="text/x-kendo-tmpl">

<tr data-uid="#: uid #">

<td class="photo">

<img src=" #:data.EmployeeID#.jpg" alt="#: data.EmployeeID #" />

</td>

<td class="details"> <span class="title">#: Title #</span>

<span class="description">Name : #: FirstName# #: LastName#</span>

<span class="description">Country : #: Country# </span></td>

<td class="employeeID">#: EmployeeID #</td></tr>

</script>

4 TreeView

4.1 创建Treeview

$("#treeview-sprites").kendoTreeView({

……

});

4.2 Treeview配置项

l dataSource : deptDataSource,//数据源

l dataTextField : "deptName",//显示文本字段

l dragAndDrop: true,//是否允许拖拽节点

l checkboxes : {checkChildren : true},//节点前显示复选框

4.3 TreeView数据源

Json格式[{deptId:1,childrenList:[{deptId:2,childrenList:[{....}]}]}]

schema : {

model : {

id : "deptId",

children : "childrenList",

hasChildren : function(item) {return item.childrenList.length != 0;

}}}

4.4 TreeView常用方法

//获取TreeView对象

var treeview = $("#treeview").data("kendoTreeView");

//根据文本查找节点

treeview.findByText("xxxx")

//展开节点(只能展开下一级)

treeview.expand(".k-item");

4.5 TreeView常见事件

//选择节点事件

select : function(e) {

var treeview=$('#treeviewsprites').data('kendoTreeView');

//获取选中节点的数据

var data = treeview.dataItem(e.node);

}

//绑定事件

dataBound : function(e) {

//展开所有节点

$('#treeview-sprites').data('kendoTreeView').expand(".k-item");

},

5 Window

5.1 创建Window

$("#window").kendoWindow({

…...

});

5.2 Window常用配置项

l width: "505px",

l height: "315px",

l title: "Rams's Ten Principles of Good Design",

l actions: ["Pin", "Refresh","Minimize","Maximize", "Close"]

//顶端按钮:固定钉、刷新、最小化、最大化、关闭

5.3 Window常用方法

//获取窗口对象

Var dialog = $("#dialog").data("kendo Window");

//居中显示

dialog.center();

//打开窗口

dialog.open();

//关闭窗口

dialog.close();

6 DropDownList

6.1 创建DropDownList

$("#ddlSex").kendoDropDownList({

……

})

6.2 DropDownList配置项

l dataSource:datasource//数据源

l dataTextField : "text",//显示文本字段

l dataValueField : "value"//值字段

6.3 DropDownList常用方法

//获取DropDownList对象

var ddl =("#ddlSex").data("kendoDropDownList");

//获取选中项的值

ddl.dataItem().value;

//赋值

ddl.value("……");

//设置选中的值

ddl.select(index)

5 Validator

5.1 创建Validator

$("#formId").kendoValidator({

……

});

注:验证的控件必须在<form>标签内

5.2 Validator配置项

l validateOnBlur: false//失去焦点时验证,默认值为true

l rules //自定义验证规则

rules: {customRule1: function(input) {

if (input.is("[name=username]")) {

return input.val() === "Tom";}

return true;},

customRule2: function(input) {……}

}

l messages //自定义验证消息

messages: {

customRule1: "Your UserName must be Tom",

customRule2: "All fields are required"

}

5.3 常用Validator

l 非空验证

<input type="text" name="fullname" id="fullname" required validationMessage="Please enter {0}" />

{0} 为 name属性的值

l 输入类型验证

<input type="tel" id="tel" pattern="\d{10}" required validationMessage="Please enter number"/>

最新文章

  1. Win10 + Nginx 1.10 + PHP 7 + Redis 配置方法
  2. Caused by: java.io.NotSerializableException: com.omhy.common.model.entity.XXX解决方法
  3. android -- 蓝牙 bluetooth (五)接电话与听音乐
  4. JavaScript设计模式(一)
  5. eclipse 反编译class 文件 插件-jad
  6. php启用gzip压缩
  7. python 基础之字符编码和文件处理
  8. 初探 ELK - 每天5分钟玩转 Docker 容器技术(89)
  9. H5页面转成图片并下载到本地
  10. 基于Django 的 FreeSwitch 开源GUI 管理系统 YouPBX
  11. 使用hql动态创建对象问题
  12. redis集群篇
  13. etectMultiScale(gray, 1.2,3,CV_HAAR_SCALE_IMAGE,Size(30, 30))
  14. 友善RK3399/NanoPC-T4开发板wiringPi的C语言访问GPIO外设实例讲解 -【申嵌视频】
  15. Jenkins实现自动化部署
  16. form的action属性值对应servlet的web.xml的url-pattern
  17. SQL Server 2008 R2官方中文版下载
  18. ace富文本编辑器
  19. Android onActivityResult和setResult
  20. sql语句-5-联接组合查询

热门文章

  1. 第2章 netty介绍与相关基础知识
  2. [codeforces126B]Password
  3. C/C++读写csv文件
  4. JavaPersistenceWithMyBatis3笔记-第1章-001
  5. Luogu 2149 [SDOI2009]Elaxia的路线
  6. 把数据分配到view
  7. kaggle House_Price_XGBoost
  8. 【C#】 创建、部署和调用WebService的简单示例
  9. code manager toos TotoiseSVN解锁
  10. 转:IDEA 与 eclipse 的部分区别!