博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
fullCalendar动态获取数据
阅读量:5976 次
发布时间:2019-06-20

本文共 5394 字,大约阅读时间需要 17 分钟。

422101-20160822153352433-1415956208.png

422101-20160822153357355-1206746957.png

fullCalendar 

$('#calendar').fullCalendar({    header: {        left: 'prev,next',        center: 'title',        right: 'today'    },    defaultDate: '2016-08-20',    lang: 'zh-cn',    buttonIcons: false, // show the prev/next text    weekMode: 'liquid',    events: function(start,end,timezone, callback) {        var date = this.getDate().format('YYYY-MM');        $.ajax({            url: '?m=home&c=product&a=ajax&todo=ajaxGetProductMonthPrice',            dataType: 'json',            data: {                id:{$id},                date: date,            },            success: function(json) { // 获取当前月的数据                var events = [];                if (json.status == '1') {                    $.each(json.info,function(i,c) {                        if (c.is_special == '1') {                            events.push({                                title: '¥'+c.price+','+c.stock+'套',                                start: c.date , // will be parsed                                color: '#FFEBAC'                            });                        } else {                            events.push({                                title: '¥'+c.price+','+c.stock+'套',                                start: c.date , // will be parsed                                color: '#BEEABE'                            });                        }                                            });                }                callback(events);            }        });    }});

var date = this.getDate().format('YYYY-MM');

每次点击上一月,下一月都会获取月份。
把月份传入后台,获取数据。

$id  = trim($_REQUEST['id']);$date= trim($_REQUEST['date']);$r = $this->product_db->get_one(array('id'=>$id));if (empty($r)) { // 不存在    $rdata['status'] = 2;    $rdata['msg']    = '房源不存在';} else {    $rdata['status'] = 1;    $rdata['msg']    = '获取成功';    // 获取目标月份对应的数据    $special_type = $r['special_type']; // 0 无特价 1 周五,周六 2 周六,周日 3 周五,周六,周日    $special_price= $r['special_price'];    $price        = $r['price'];    $stock        = $r['num'];    $days = get_day($date,'2');    foreach ($days as $k => $day) {        $week = get_week($day);        $info[$k]['date'] = $day;        switch ($special_type) {            case '0':                $info[$k]['price'] = $price;                $info[$k]['is_special']= '0';                break;            case '1':                if (in_array($week,array('星期五','星期六'))) {                    $info[$k]['price'] = $special_price;                    $info[$k]['is_special']= '1';                } else {                    $info[$k]['price'] = $price;                    $info[$k]['is_special']= '0';                }                break;            case '2':                if (in_array($week,array('星期六','星期日'))) {                    $info[$k]['price'] = $special_price;                    $info[$k]['is_special']= '1';                } else {                    $info[$k]['price'] = $price;                    $info[$k]['is_special']= '0';                }                break;            case '3':                if (in_array($week,array('星期五','星期六','星期日'))) {                    $info[$k]['price'] = $special_price;                    $info[$k]['is_special']= '1';                } else {                    $info[$k]['price'] = $price;                    $info[$k]['is_special']= '0';                }                break;            default:                                break;        }        $info[$k]['isRent'] = '1'; // 1表示可租        $info[$k]['stock']  = $stock;    }    $rdata['info'] = $info;}exit(json_encode($rdata));break;

get_day方法,获取当月的每天日期

/** * 获取当月天数 * add by Jim * @param  $date  * @param  $rtype  1天数 2具体日期数组 * @return  */function get_day( $date ,$rtype = '1')   {    $tem = explode('-' , $date);       //切割日期  得到年份和月份    $year = $tem['0'];    $month = $tem['1'];    if( in_array($month , array( 1 , 3 , 5 , 7 , 8 , 01 , 03 , 05 , 07 , 08 , 10 , 12)))    {        // $text = $year.'年的'.$month.'月有31天';        $text = '31';    }    elseif( $month == 2 )    {        if ( $year%400 == 0  || ($year%4 == 0 && $year%100 !== 0) )        //判断是否是闰年        {            // $text = $year.'年的'.$month.'月有29天';            $text = '29';        }        else{            // $text = $year.'年的'.$month.'月有28天';            $text = '28';        }    }    else{        // $text = $year.'年的'.$month.'月有30天';        $text = '30';    }    if ($rtype == '2') {        for ($i = 1; $i <= $text ; $i ++ ) {            if ($i < 10) {                $i = '0'.$i;            }            $r[] = $year."-".$month."-".$i;        }    } else {        $r = $text;    }    return $r;}

get_week获取具体日期对应的星期几,根据后台数据,设置返回信息。周末特价。

/** * 获取星期几 * add by Jim */function get_week($date){    //强制转换日期格式    $date_str=date('Y-m-d',strtotime($date));    //封装成数组    $arr=explode("-", $date_str);         //参数赋值    //年    $year=$arr[0];         //月,输出2位整型,不够2位右对齐    $month=sprintf('%02d',$arr[1]);         //日,输出2位整型,不够2位右对齐    $day=sprintf('%02d',$arr[2]);         //时分秒默认赋值为0;    $hour = $minute = $second = 0;            //转换成时间戳    $strap = mktime($hour,$minute,$second,$month,$day,$year);         //获取数字型星期几    $number_wk=date("w",$strap);         //自定义星期数组    // $weekArr=array("7","1","2","3","4","5","6");    $weekArr=array("星期日","星期一","星期二","星期三","星期四","星期五","星期六");         //获取数字对应的星期    return $weekArr[$number_wk];}本文转自TBHacker博客园博客,原文链接:http://www.cnblogs.com/jiqing9006/p/5795799.html,如需转载请自行联系原作者
你可能感兴趣的文章
修改PHP模板
查看>>
dtree.js树的使用
查看>>
将0~N打乱顺序,然后排序
查看>>
Javascript 函数声明和函数表达式的区别
查看>>
10.23 相对,绝对路径,cd,mkdir/rmdir,rm命令
查看>>
传参方式小记
查看>>
关于jsp页面传值乱码问题
查看>>
系统重构笔记
查看>>
浏览器本地存储
查看>>
设计模式——工厂方法模式和抽象工厂模式
查看>>
5月23日任务 LAMP架构介绍、MySQL、MariaDB介绍、 MySQL安装
查看>>
FCC有意支持Sprint与T-Mobile合并?
查看>>
XMLHttpRequest
查看>>
词向量、句子向量、篇章向量的一些理解(转)
查看>>
Linux集群架构(下)——DR模式、keepalived+LVS
查看>>
使用Xshell连接Linux服务器
查看>>
hadoop学习笔记2
查看>>
最全面的C/C++编码规范总结
查看>>
Java程序员涨薪必备技能
查看>>
C++ socket编程
查看>>