文章分类 Classification
kendoUI系列教程之calendar日历表
稿件来源: 阳光企业网站管理系统 撰稿作者: 太阳光 发表日期: 2013-10-26 阅读次数: 3871 查看权限: 游客查看
kendoUI系列教程,kendoUI中文教程,kendoUI中文API说明文档之calendar日历表。
calendar与日期选择组件几乎是一样的,但calendar可以在日期中添加事件。使用例子:
<div id="special-days"> <script> $(document).ready(function() { var today = new Date(), events = [ +new Date(today.getFullYear(), today.getMonth(), 8), +new Date(today.getFullYear(), today.getMonth(), 12), +new Date(today.getFullYear(), today.getMonth(), 24), +new Date(today.getFullYear(), today.getMonth() + 1, 6), +new Date(today.getFullYear(), today.getMonth() + 1, 7), +new Date(today.getFullYear(), today.getMonth() + 1, 25), +new Date(today.getFullYear(), today.getMonth() + 1, 27), +new Date(today.getFullYear(), today.getMonth() - 1, 3), +new Date(today.getFullYear(), today.getMonth() - 1, 5), +new Date(today.getFullYear(), today.getMonth() - 2, 22), +new Date(today.getFullYear(), today.getMonth() - 2, 27) ]; $("#calendar").kendoCalendar({ value: today, dates: events, month: { content: '# if ($.inArray(+data.date, data.dates) != -1) { #' + '<div class="' + '# if (data.value < 10) { #' + "exhibition" + '# } else if ( data.value < 20 ) { #' + "party" + '# } else { #' + "cocktail" + '# } #' + '">#= data.value #</div>' + '# } else { #' + '#= data.value #' + '# } #' }, footer: false }); }); </script>
Configuration配置项
1、语言 culture
类型:String
默认:en-US
默认:en-US
说明:配置日历显示什么语言,kendoui配有几十种语言包,详细的参看js\cultures文件夹。
<div id="calendar"></div> <script> $("#calendar").kendoCalendar({ culture: "zh-CN" //指定为中文 }); </script>
2、事件日期组 dates
类型:Array
说明:将用于在月视图模板下的日期集合。注意它不是自动显示在月视图下的,需要使用month.content来渲染。
说明:将用于在月视图模板下的日期集合。注意它不是自动显示在月视图下的,需要使用month.content来渲染。
<div id="calendar"></div> <script> $("#calendar").kendoCalendar({ value: new Date(2000, 10, 1), dates: [ new Date(2000, 10, 10, 10, 0, 0), new Date(2000, 10, 10, 30, 0) ] //月视图模板可渲染这些日期 }); </script>
3、导航深度 depth
类型:String
说明:设置导航的深度级,可选以下值:
说明:设置导航的深度级,可选以下值:
- "month":显示本月所有日期
- "year":显示本年所有月份
- "decade":显示这个区间的十个年头
- "century":显示本世纪的每个十年区间
<div id="calendar"></div> <script> $("#calendar").kendoCalendar({ depth: "year" }); </script>
注:本人并没发觉设置这个值有什么不同,不管设置什么值导航是一样的。
4、脚部内容 footer
类型:String|Function
说明:设置日历脚部模板内容,设值为false时将隐藏脚部内容。
说明:设置日历脚部模板内容,设值为false时将隐藏脚部内容。
<div id="calendar"></div> <script id="footer-template" type="text/x-kendo-template"> Today - #: kendo.toString(data, "d") # </script> <script> $("#calendar").kendoCalendar({ footer: kendo.template($("#footer-template").html()) }); </script> <!--或者--> <div id="calendar"></div> <script> $("#calendar").kendoCalendar({ footer: "Today - #: kendo.toString(data, 'd') #" }); </script>
5、格式化 format
类型:String
默认:MM/dd/yyyy
默认:MM/dd/yyyy
说明:格式化日历使用value()方法返回的值。
<div id="calendar"></div> <script> $("#calendar").kendoCalendar({ format: "yyyy/MM/dd" }); </script>
6、最大日期 max
类型:Date
默认:2099, 11, 31
默认:2099, 11, 31
说明:指定日历可显示的最大日期。
7、最小日期 min
类型:Date
默认:1900, 0, 1
默认:1900, 0, 1
说明:指定日历可显示的最小日期。
<div id="calendar"></div> <script> $("#calendar").kendoCalendar({ min: new Date(2011, 0, 1), max: new Date(2021, 0, 1) }); </script>
8、月视图 month
类型:Object
说明:月视图下每个格子的模板。
说明:月视图下每个格子的模板。
9、月视图内容 month.content
类型:String
说明:默认月视图下每个格子只显示对应的日期,而通过此属性可修改本月日期范围内每个格子的显示内容。
说明:默认月视图下每个格子只显示对应的日期,而通过此属性可修改本月日期范围内每个格子的显示内容。
<div id="calendar"></div> <script id="cell-template" type="text/x-kendo-template"> <div class="#= data.value < 10 ? 'exhibition' : 'party' #"></div> #= data.value # </script> <script> $("#calendar").kendoCalendar({ month: { content: $("#cell-template").html() } }); </script>
10、月视图空格子内容 month.empty
类型:String
说明:指定不在max/min范围内的月视图下每个格子显示的内容,默认是为空。
说明:指定不在max/min范围内的月视图下每个格子显示的内容,默认是为空。
<div id="calendar"></div> <script> $("#calendar").kendoCalendar({ month: { empty: '-' //指定无效日期里显示 "-" } }); </script>
11、默认初始视图 start
类型:String
默认:month
说明:指定初始时显示的视图。可选值有"month"、 "year"、 "decade"、 "century"四种视图。
默认:month
说明:指定初始时显示的视图。可选值有"month"、 "year"、 "decade"、 "century"四种视图。
<div id="calendar"></div> <script> $("#calendar").kendoCalendar({ start: "year" }); </script>
12、默认值 value
类型:Date
默认:null
说明:指定初始时日历选中的日期。
默认:null
说明:指定初始时日历选中的日期。
<div id="calendar"></div> <script> $("#calendar").kendoCalendar({ value: new Date(2012, 0, 1) }); </script>
Methods 方法
<div id="calendar"></div> <script> $("#calendar").kendoCalendar(); var calendar = $("#calendar").data("kendoCalendar"); var current = calendar.current(); //获取当前选中的日期 var max = calendar.max();//获取日历最大日期 calendar.max(new Date(2100, 0, 1));//设置日历最大日期 var min = calendar.min();//获取日历最小日期 calendar.min(new Date(1999, 0, 1));//设置日历最小日期 calendar.navigate(new Date(2012, 0, 1), "year");//指定日历日期与相应视图 calendar.navigateDown(new Date(2012, 0, 1));//日历导航向下翻。指世纪到十年间,十年间到指定年份,年份到指定月份的过程。 calendar.navigateUp();//日历导航向上翻,与上相反。 calendar.navigateToFuture();//导航到未来。指向后翻日历。 calendar.navigateToPast(); //导航到过去。指向前翻日历。 var value = calendar.value(); //获取日历日期。 calendar.value(new Date()); //设置日历日期。 var view = calendar.view();//返回日历视图对象。calendar.view().name是日历视图名称。 calendar.destroy();//销毁日历,删除日历所有事件与方法 </script>
Events 事件
<div id="calendar"></div> <script> $("#calendar").kendoCalendar({ change: function() { var value = this.value();//日历值变化时触发 }, navigate: function() { var view = this.view();//日历导航切换时触发 } }); //这些事件都可使用bind绑定。 </script>
Keyboard Navigation 快捷键
序号 | 快捷键 | 作用 |
---|---|---|
1 | alt + w | 获取焦点。需要设置html5的accesskey属性 |
2 | left arrow | 高亮前一天 |
3 | right arrow | 高亮后一天 |
4 | up arrow | 高亮同列上一个日期 |
5 | down arrow | 高亮同列下一个日期 |
6 | ctrl + left arrow | 向左切换视图 |
7 | ctrl + right arrow | 向右切换视图 |
8 | ctrl + up arrow | 向上切换视图 |
9 | ctrl + down arrow | 向下切换视图 |
10 | home | 选中本视图的第一格 |
11 | end | 选中本视图的最后一格 |
12 | enter | 如果在月视图下将选择高亮日期,其他视图将向下翻视图。 |
在线测试:http://demos.kendoui.com/web/calendar/index.html
关键词: kendoui,html5,calendar 编辑时间: 2013-10-27 20:08:51
0
高兴1
支持0
搞笑2
不解0
谎言0
枪稿0
震惊0
无奈0
无聊0
反对0
愤怒
81.82%(9)
18.18%(2)
- 暂无评论
文章图片 article Pictrue
网友评论