zoukankan      html  css  js  c++  java
  • JQuery FullCalendar(一)

    FullCalendar官网:http://arshaw.com/fullcalendar

    FullCalendar中文API:http://blog.sina.com.cn/s/blog_9475b1c101012c5f.html

    FullCalendar日历插件说明文档http://www.helloweba.com/view-blog-231.html

     

    一、准备相关JS文件

    <link href="CSS/fullcalendar.css" rel="stylesheet" type="text/css" />
    <script src="JS/jquery-1.9.1.js" type="text/javascript"></script>
    <script src="JS/jquery-ui-1.10.3.custom.min.js" type="text/javascript"></script>
    <script src="JS/fullcalendar.min.js" type="text/javascript"></script>

     

    二、JS代码

    FullCalendar通过events的设置向数据源请求数据,要求返回的JSON数据格式如下

    [
        {
            "id": 1,
            "title": "正常上班",
            "start": "2013/11/19 17:26:54",
            "end": "2013/11/19 17:26:54",
            "url": null,
            "allDay": "True",
            "color": "#666"
        }
    ]

    待会根据这个格式,设计数据库

    fullCalendar工具:formatDate
    调用方法:$.fullCalendar.formatDate(time,formatstring)

    events设置数据源,同时可以传递start,end两个参数,该视图的第一天日期和最后一天日期(并非该月或者星期)

    <script type="text/javascript">
            $(function () {
                $('#calendar').fullCalendar({
                    header: {//set header info
    left: 'prev,next today', center: 'title', right: 'month,agendaWeek,agendaDay' }, firstDay: 7, editable: true, //send startParam,endParam to json.ashx events: function (start, end, callback) { $.getJSON("json.ashx", { "start": $.fullCalendar.formatDate(start, "yyyy-MM-dd HH:mm:ss"), "end": $.fullCalendar.formatDate(end,"yyyy-MM-dd HH:mm:ss") }, function (json) { callback(json); }); }
                });
            });
        </script>

     

    三、HTML代码

    <div id='calendar'></div>

     

    四、数据库设计

    创建数据表calendar表,包含字段:

    id(int ,not null),

    title(nvarchar(200),not null),

    start(datetime, not null),

    end(datetime, defaultValue:1970/1/1 8:00:00),

    url(nvarchar(200)),

    allDay(bit),

    color(nvarchar(200) ,defaultValue:#666),

    title和start是必要的字段

    五、后台json.ashx,返回json数据

                  DateTime start = Convert.ToDateTime( context.Request["start"]);
                DateTime end = Convert.ToDateTime( context.Request["end"]);
                AddNewsDataContext db = new AddNewsDataContext();
                var res = from i in db.calendar
                          //注意时间的开闭区间
                          where i.start >= start && i.start <= end || i.end >= start && i.end <= end 
                          select new
                          {
                              id = i.Id,
                              title=i.title,
                              start = i.start.Value.Year + "/" + i.start.Value.Month + "/" + i.start.Value.Day + " " + i.start.Value.Hour + ":" + i.start.Value.Minute + ":" + i.start.Value.Second ,
                              end = i.end.Value.Year + "/" + i.end.Value.Month + "/" + i.end.Value.Day + " " + i.end.Value.Hour + ":" + i.end.Value.Minute + ":" + i.end.Value.Second,
                              url=i.url.ToString(),
                              allDay=i.allDay,
                              color=i.color.ToString()
                          };
                JavaScriptSerializer jss = new JavaScriptSerializer();
                string json=jss.Serialize(res);
                context.Response.Write(json);

    六、效果

    allDay为false的时候显示时间

    image

  • 相关阅读:
    第一次作业(2)
    第0次作业(2)
    最后一次作业—总结报告
    第八次作业
    第七周作业
    第六周作业
    第四周作业
    第4次作业
    2018c语言第3次作业
    2018c语言第2次作业
  • 原文地址:https://www.cnblogs.com/wubian/p/3433133.html
Copyright © 2011-2022 走看看