salesforce实现日历列表

下面的实例图

931e858c1314b09ecf45d522771f0fa0a48.jpg

主要是在页面中加入日历插件Fullcalendar.js我下载是新版本fullcalendar-4.2.0

0995989c47d46981b8789eaf4d477a35569.jpg

我这还导入了jquey的插件,因为我后面会用到的

日历显示的标签

65f52134b988453ebfe3afe996b38b4e71c.jpg

具体实现的js

 <script>

Date.prototype.formats = function(format){ 
        var o = { 
        "M+" : this.getMonth()+1, //month 
        "d+" : this.getDate(), //day 
        "h+" : this.getHours(), //hour 
        "m+" : this.getMinutes(), //minute 
        "s+" : this.getSeconds(), //second 
        "q+" : Math.floor((this.getMonth()+3)/3), //quarter 
        "S" : this.getMilliseconds() //millisecond 
        }; 
        if(/(y+)/.test(format)) { 
        format = format.replace(RegExp.$1, (this.getFullYear()+"").substr(4 - RegExp.$1.length)); 
        } 
        for(var k in o) { 
        if(new RegExp("("+ k +")").test(format)) { 
        format = format.replace(RegExp.$1, RegExp.$1.length==1 ? o[k] : ("00"+ o[k]).substr((""+ o[k]).length)); 
        } 
        } 
return format; 
};
    

    
    document.addEventListener('DOMContentLoaded', function() {
    var calendarEl = document.getElementById('calendar');

    var calendar = new FullCalendar.Calendar(calendarEl, {
      plugins: [ 'interaction', 'dayGrid' ],
      header: {
                //日历头部左边:初始化切换按钮
                left: 'prev,today,next',
                //日历头部中间:显示当前日期信息
                center: 'title',
                //日历头部右边:初始化视图
                right: '',
            },
       //设置是否显示周六和周日,设为false则不显示  
        weekends: true,
       aspectRatio: 1.35,
      //月视图的显示模式,fixed:固定显示6周高;liquid:高度随周数变化;variable: 高度固定
       weekMode: 'fixed',
      // defaultDate: '2019-06-12',
      editable: true,
        //navLinks: true,
      //设置是否可被单击或者拖动选择
      selectable: true,
      weekNumbers: false,
      weekNumbersWithinDays: true,
      weekNumberCalculation: 'ISO',
       buttonText: {  
           today: '今天', 
       },
      select: function(arg) {
        var title = prompt('Event Title:');
        if (title) {
          calendar.addEvent({
            title: title,
            start: arg.start,
            end: arg.end,
            allDay: arg.allDay
          })
        }
        calendar.unselect()
      },
      eventLimit: true, // allow "more" link when too many events
     
     events:function(fetchInfo,successCallback,failureCallback){           
        alert("sss")
        var province=$('[id$=province]').val();
        var schools=$('[id$=school]').val();
        var city=$('[id$=city]').val();
        var flag= $('[id$=appoint]').is(':checked');
         Visualforce.remoting.Manager.invokeAction(
                        '{!$RemoteAction.AuditionController.qureyList}',//访问后台controoller里面的方法
              province,schools,city,flag,//参数值
                        function(result, event){ 
                        var events = []; 
                        alert(result)
                        for(var i=0;i<result.length;i++){
                            var classCourseDate=getDate(result[i].BeginTime__c);
                            var school=result[i].SchoolInfo__r.Name
                            var time=formatDate(result[i].BeginTime__c)
                            alert(classCourseDate);
                              events.push({
                                      title:school+" "+time,
                                     start: classCourseDate,
                                     color:'#ffddff'
                               });
                        
                           }
                         successCallback(events);
                     },
                   {escape: false}
               );
            
         } 
    });

    calendar.render();
  });
</script>

注意:events:function(fetchInfo,successCallback,failureCallback)是最新版的方法

function(start,end,timezone,callback)这个是老版本的方法!

以上就是日历页面的实现!!

 

转载于:https://my.oschina.net/u/3459265/blog/3071671

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值