使用kendoui实现日期除去工作日

<input type="text" id="div-timePrint" value="" readonly="false" style="width: 500px" />

    <div id="example">
        <div class="demo-section">
            <div id="special-days">
                <div id="calendar"></div>
            </div>
        </div>

        <script>
            $(document).ready(function () {
                debugger;
                var today = new Date(),
                    events = timeHoliday();
                $("#calendar").kendoCalendar({
                    change: onChange,
                    value: today,
                    dates: events,
                    month: {
                        // template for dates in month view
                        content: ‘# if ($.inArray(+data.date, data.dates) != -1) { #‘ +
                            ‘<div onmousedown="testA()" class="exhibition">#= data.value #</div>‘ +
                            ‘# } else { #‘ +
                            ‘<div> #=  data.value # </div>‘ +
                            ‘# } #‘
                    },
                    footer: false
                });
            });

            function testA() {
                alert(‘The date you choose is disabled!‘);
            }

            function testB(date) {
                //var newDate = new Date();
                //date = (newDate.getFullYear()) + ‘year‘ + testD(newDate.getMonth() + 1) + ‘month‘ + testD(date);
                document.getElementById("div-timePrint").value = "selected Time:" + date;
            }

            function testC(today) {
                var testSZ = [];
                testSZ = [
                    +new Date(2015, 3, 16),
                    +new Date(today.getFullYear(), today.getMonth(), 9),
                    +new Date(today.getFullYear(), today.getMonth(), 10),
                    +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)
                ];
                return testSZ;
            }

            function testD(s) {
                var sTime = s.toString().length < 2 ? ‘0‘ + s : s;
                return sTime;
            }

            function onChange() {
                var TimeToStr = kendo.toString(this.value(), ‘d‘);
                testB(TimeToStr);
            }

            function timeHoliday() {
                //var pjTime = "[";
                var pjTime = [];
                var sz;
                $.ajax({
                    url: "/MyTemplateAshx.ashx",
                    type: "post",
                    async: false,
                    success: function (data) {
                        sz = eval(data);
                        for (var i = 0; i < sz.length; i++) {
                            debugger;
                            //pjTime += new Date(sz[i].Date);
                            var newDate = sz[i].Date.split(‘,‘);
                            newDate = +new Date(sz[i].Date.split(‘,‘)[0], parseInt(sz[i].Date.split(‘,‘)[1])-1, sz[i].Date.split(‘,‘)[2]);
                                //"" + sz[i].Date.split(‘,‘)[0] + "", "" + sz[i].Date.split(‘,‘)[1] + "", "" + sz[i].Date.split(‘,‘)[2] + "");
                                //sz[i].Date.split(‘,‘)[0], sz[i].Date.split(‘,‘)[1], sz[i].Date.split(‘,‘)[2]);
                            pjTime[i] = newDate;
                            //alert(sz[i].Date);
                            //alert(new Date(sz[i].Date));
                        }
                    }
                });
                //pjTime += "]";
                return pjTime;
            }
        </script>

关于节假日的sql:

IF NOT OBJECT_ID(‘[LegalHolidayTable]‘) IS NULL
    DROP TABLE [LegalHolidayTable]
GO
DECLARE @YEARS VARCHAR(MAX)
SET @YEARS = (SELECT DATENAME (YEAR ,getdate()));

CREATE TABLE [LegalHolidayTable]([LHID] INT IDENTITY(1,1) PRIMARY KEY,[YearID] INT,[DATE] DATETIME,[ISWORKDATE] BIT,[NOTE] NVARCHAR(150))
INSERT [LegalHolidayTable]
SELECT @YEARS,N‘‘[email protected] +‘-01-01‘,0,N‘元旦:1月1至3日放假3天,1月4日(星期日)上班‘ UNION ALL
SELECT @YEARS,N‘‘[email protected]+‘-01-02‘,0,N‘元旦:1月1至3日放假3天,1月4日(星期日)上班‘ UNION ALL
SELECT @YEARS,N‘‘[email protected]+‘-01-03‘,0,N‘元旦:1月1至3日放假3天,1月4日(星期日)上班‘ UNION ALL
SELECT @YEARS,N‘‘[email protected]+‘-01-04‘,1,NULL UNION ALL
SELECT @YEARS,N‘‘[email protected]+‘-01-24‘,1,NULL UNION ALL
SELECT @YEARS,N‘‘[email protected]+‘-01-25‘,0,N‘春节:1月25日至31日放假7天,1月24日(星期六)、2月1日(星期日)上班‘ UNION ALL
SELECT @YEARS,N‘‘[email protected]+‘-01-26‘,0,N‘春节:1月25日至31日放假7天,1月24日(星期六)、2月1日(星期日)上班‘ UNION ALL
SELECT @YEARS,N‘‘[email protected]+‘-01-27‘,0,N‘春节:1月25日至31日放假7天,1月24日(星期六)、2月1日(星期日)上班‘ UNION ALL
SELECT @YEARS,N‘‘[email protected]+‘-01-28‘,0,N‘春节:1月25日至31日放假7天,1月24日(星期六)、2月1日(星期日)上班‘ UNION ALL
SELECT @YEARS,N‘‘[email protected]+‘-01-29‘,0,N‘春节:1月25日至31日放假7天,1月24日(星期六)、2月1日(星期日)上班‘ UNION ALL
SELECT @YEARS,N‘‘[email protected]+‘-01-30‘,0,N‘春节:1月25日至31日放假7天,1月24日(星期六)、2月1日(星期日)上班‘ UNION ALL
SELECT @YEARS,N‘‘[email protected]+‘-01-31‘,0,N‘春节:1月25日至31日放假7天,1月24日(星期六)、2月1日(星期日)上班‘ UNION ALL
SELECT @YEARS,N‘‘[email protected]+‘-02-01‘,1,NULL UNION ALL
SELECT @YEARS,N‘‘[email protected]+‘-04-04‘,0,N‘清明节:4月4日至6日放假3天‘ UNION ALL
SELECT @YEARS,N‘‘[email protected]+‘-04-05‘,0,N‘清明节:4月4日至6日放假3天‘ UNION ALL
SELECT @YEARS,N‘‘[email protected]+‘-04-06‘,0,N‘清明节:4月4日至6日放假3天‘ UNION ALL
SELECT @YEARS,N‘‘[email protected]+‘-05-01‘,0,N‘劳动节:5月1日至3日放假3天‘ UNION ALL
SELECT @YEARS,N‘‘[email protected]+‘-05-02‘,0,N‘劳动节:5月1日至3日放假3天‘ UNION ALL
SELECT @YEARS,N‘‘[email protected]+‘-05-03‘,0,N‘劳动节:5月1日至3日放假3天‘ UNION ALL
SELECT @YEARS,N‘‘[email protected]+‘-05-28‘,0,N‘端午节:5月28日至30日放假3天,5月31日(星期日)上班‘ UNION ALL
SELECT @YEARS,N‘‘[email protected]+‘-05-29‘,0,N‘端午节:5月28日至30日放假3天,5月31日(星期日)上班‘ UNION ALL
SELECT @YEARS,N‘‘[email protected]+‘-05-30‘,0,N‘端午节:5月28日至30日放假3天,5月31日(星期日)上班‘ UNION ALL
SELECT @YEARS,N‘‘[email protected]+‘-05-31‘,1,NULL UNION ALL
SELECT @YEARS,N‘‘[email protected]+‘-09-27‘,1,NULL UNION ALL
SELECT @YEARS,N‘‘[email protected]+‘-10-01‘,0,N‘国庆节、中秋节:10月1日至8日放假8天,9月27日(星期日)、10月9日(星期五)、10月10日(星期六)上班‘ UNION ALL
SELECT @YEARS,N‘‘[email protected]+‘-10-02‘,0,N‘国庆节、中秋节:10月1日至8日放假8天,9月27日(星期日)、10月9日(星期五)、10月10日(星期六)上班‘ UNION ALL
SELECT @YEARS,N‘‘[email protected]+‘-10-03‘,0,N‘国庆节、中秋节:10月1日至8日放假8天,9月27日(星期日)、10月9日(星期五)、10月10日(星期六)上班‘ UNION ALL
SELECT @YEARS,N‘‘[email protected]+‘-10-04‘,0,N‘国庆节、中秋节:10月1日至8日放假8天,9月27日(星期日)、10月9日(星期五)、10月10日(星期六)上班‘ UNION ALL
SELECT @YEARS,N‘‘[email protected]+‘-10-05‘,0,N‘国庆节、中秋节:10月1日至8日放假8天,9月27日(星期日)、10月9日(星期五)、10月10日(星期六)上班‘ UNION ALL
SELECT @YEARS,N‘‘[email protected]+‘-10-06‘,0,N‘国庆节、中秋节:10月1日至8日放假8天,9月27日(星期日)、10月9日(星期五)、10月10日(星期六)上班‘ UNION ALL
SELECT @YEARS,N‘‘[email protected]+‘-10-07‘,0,N‘国庆节、中秋节:10月1日至8日放假8天,9月27日(星期日)、10月9日(星期五)、10月10日(星期六)上班‘ UNION ALL
SELECT @YEARS,N‘‘[email protected]+‘-10-08‘,0,N‘国庆节、中秋节:10月1日至8日放假8天,9月27日(星期日)、10月9日(星期五)、10月10日(星期六)上班‘ UNION ALL
SELECT @YEARS,N‘‘[email protected]+‘-10-10‘,1, NULL 

GO
时间: 2024-10-24 09:28:30

使用kendoui实现日期除去工作日的相关文章

ThinkPHP中如何获取指定日期后工作日的具体日期

思路: 1.获取到查询年份内所有工作日数据数组2.获取到查询开始日期在工作日的索引3.计算需查询日期索引4.获得查询日期 /*创建日期类型记录表格*/ CREATE TABLE `tb_workday` ( `did` int(11) NOT NULL AUTO_INCREMENT, `exact_date` varchar(32) NOT NULL COMMENT '具体日期:格式date("Ymd");(20170205)', `date_year` varchar(32) NOT

WPF判断日期是工作日还是节假日

通过API(http://www.easybots.cn/holiday_api.net)获取返回信息 写一个接收的反馈的函数IsHoliday public string IsHoliday(string date) { string url = @"http://www.easybots.cn/api/holiday.php?d="; url = url + date; HttpWebRequest httpRequest = (HttpWebRequest)WebRequest.

Java SSH 项目总结——设定工作日日历

前言 今天文章的主题就是日历,先介绍下背景,这个日历是为一个在线预约系统服务的,在线预约就是选择工作日,然后进行具体业务的预约,而工作日的是设定就是通过我们这个日历来完成的. 正题 效果 我们先来看下日历的效果图,第一张是当前月的日历,第二张是设定完工作日的日历, 分解 我们要实现这个工作日设定的日历的功能,将这个功能进行分解: 1.实现一个万年历. 2.通过界面点击日历将工作日保存到数据库中 3.将数据库中已经设定好的日期渲染到界面日历中以不同的颜色进行标识. 实现 数据库设计 数据库中需要保

计算日期类型-未完待完成

/* =======================================版权:CuiYaChao创 建 人:CuiYaChao创建日期:功能描述:传递6个参数 开始日期 开始小时 开始分钟 结束日期 结束小时 结束分钟, 计算得出该段时间的加班类型以及对应加班类型的小时数加班类型有 工作日 双休日 法定假日 ******有可能某一天既是法定假日 又是双休日******单元名称: Fun_GetJiaBanTypeTatalHour主表(可更新表):包含表: 修改日志:其它说明: ==

根据工作日/节假日收货要求计算预计发货时间

1.需求: 根据下单时间orderTime(这里默认是系统时间); 客户收货时间要求:工作日=1,节假日2; 计算预计发货时间(这里需要运输时长); 2.思路:  要计算预计发货时间,(仓库的发货截止时间是当天的16:30 ;16:30以后的当做第二天的订单) 首先计算正常情况到货时间, 例如正常情况下: 某订单是8月16号的单子, 上海-->江苏省南京市  8月16号 16:30 发货, 运输时效为17小时,预计到货时间是8月17号 9:30(周六) , 然后,根据预计到货时间开始计算出客户要

Java节假日算法

类:Vacation package test; import java.io.Serializable; import java.util.Date; public class Vacation implements Serializable { private static final long serialVersionUID = 1L; private Date date; private int days; public Date getDate() { return date; }

linux中的计划任务

任务或作业:计划的命令 at:计划一次性任务 一个系统守护进程(atd),它有一组命令行工具可与守护进程进行交互:atd守护进程提供了a到z共26个队列,作业按字母排列,越往后系统优先级越低 at <timespec> :计划新作业,at会随后读取从stdin执行的命令.对于较大的命令以及错别字敏感的命令,使用来自脚本文件的输入重定向比在终端窗口中手动输入命令要简单,手动输入时,Ctrl+d可以完成输入 eg: now +5min  相对时间,从现在起,5分钟后执行 teatime  tomo

Datetime类型的扩展

原文出处:http://www.codeproject.com/Articles/870939/Datetime-Extensions 本文主要针对System.DateTime类型的一系列扩展.包括不同语言环境下对节假日和工作日时间的计算. 简介: 这个开源的项目是对System.DateTime类型的一系列扩展.包括在不同语言环境下节假日和工作日的时间计算. 在许多的企业中,都有一个工作日的概念.无论是计算工作流的完成日期还是回电话,除了节假日和周末,许多企业都从一个日期来增加或减少天数的方

quarzt(官方)---给自己看的文档(CronTrigger)

第6课:CronTrigger CronTrigger通常比SimpleTrigger更有用,如果您需要一个基于日历的概念重复的作业启动计划,而不是SimpleTrigger的精确指定的间隔. 使用CronTrigger,您可以指定点火时间表,例如"每个星期五中午",或"每个工作日和上午9:30",甚至"每周一,周三上午9点到10点之间每隔5分钟和1月份的星期五". 即使如此,像CronTrigger一样,CronTrigger有一个startT