Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/83.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Jquery FullCalendar事件在周视图中显示两次_Jquery_Fullcalendar - Fatal编程技术网

Jquery FullCalendar事件在周视图中显示两次

Jquery FullCalendar事件在周视图中显示两次,jquery,fullcalendar,Jquery,Fullcalendar,我在FullCalendar中添加了一个新事件。该事件在“日”视图中显示时显示为一个div,但在视图更改为“周”时显示为两个附加div 以下是我的脚本代码: @model Alis.AgentPortal.Models.MeetingVM @using Alis.AgentPortal.Helpers @{ ViewBag.Title = "Calender"; Layout = "~/Views/Shared/_LayoutforMarketRep.cshtml"; } @s

我在FullCalendar中添加了一个新事件。该事件在“日”视图中显示时显示为一个div,但在视图更改为“周”时显示为两个附加div

以下是我的脚本代码:

@model Alis.AgentPortal.Models.MeetingVM
@using Alis.AgentPortal.Helpers
@{
    ViewBag.Title = "Calender";
    Layout = "~/Views/Shared/_LayoutforMarketRep.cshtml";
}
@section scripts{
    @Styles.Render("~/Content/Calender")
    @Scripts.Render("~/bundles/modernizr")
    @Scripts.Render("~/bundles/scripts")

}


<script type="text/javascript">

    $(document).ready(function () {

        $.ajaxSetup({
            cache: false
        });

        function SetValidate() {
            var valMessage1 = "";
            if ($("#eventTitle").val() == "") {
                valMessage1 = valMessage1 + "Please enter subject.";
                valMessage1 = valMessage1 + "\n";
            }
            if ($("#eventDate").val() == "") {
                valMessage1 = valMessage1 + "Please enter effective date.";
                valMessage1 = valMessage1 + "\n";
            }
            //if ($("#Status").val() == "") {
            //    valMessage1 = valMessage1 + "Please enter Meeting Status.";
            //    valMessage1 = valMessage1 + "\n";
            //}
            var Req = $('#whoRequired').find(":selected").text();
            if (Req == null || Req == "") {
                valMessage1 = valMessage1 + "Please enter required person.";
                valMessage1 = valMessage1 + "\n";
            }
            var numbers = /^[0-9]+$/;
            if (!$('#eventDuration').val().match(numbers)) {
                valMessage1 = valMessage1 + "Please enter appointment length in numeric.";
                valMessage1 = valMessage1 + "\n";
            }

            return valMessage1;
        }

        $("#btnPopupSave").click(function () {

            if (SetValidate() != "") {
                alert(SetValidate());
            }
            else {
                $('#popupEventForm').hide();
                var blkstr = "";
                $.each($("#whoRequired").val(), function (idx2, val2) {
                    blkstr = val2 + "," + blkstr;
                });
                var Reminder = "";
                if ($('#chkReminder').prop('checked')) {
                    Reminder = true;
                } else {
                    Reminder = false;
                }
                var dataRow = {
                    'MeetingId': $('#MeetingId').val(),
                    'Title': $('#eventTitle').val(),
                    'NewEventTime': $('#eventTime').val(),
                    'WhoRequired': blkstr,
                    'Descripttion': $('#txtdescription').val(),
                    'Status': $('#Status').val(),
                    'NewEventDate': $('#eventDate').val(),
                    'Remider': Reminder,
                    'NewEventDuration': $('#eventDuration').val(),
                    'Notes': $('#txtnotes').val(),
                }

                ClearPopupFormValues();

                $.ajax({
                    type: 'POST',
                    url: "/Calender/SaveEvent",
                    data: dataRow,
                    success: function (response) {
                        if (response == 'True') {
                            $('#calendar').fullCalendar('refetchEvents');
                            alert('New event saved!');
                        }
                        else {
                            alert('Error, could not save event!');
                        }
                    }
                });
            }
        });

        var sourceFullView = { url: '/Calender/GetDiaryEvents/' };
        var sourceSummaryView = { url: '/Calender/GetDiarySummary/' };
        var CalLoading = true;

        $('#calendar').fullCalendar({
            header: {
                left: 'prev,next today',
                center: 'title',
                right: 'month,agendaWeek,agendaDay'
            },
            defaultView: 'agendaDay',
            editable: true,
            allDaySlot: false,
            selectable: true,
            slotMinutes: 15,
            events: '/Calender/GetDiaryEvents/',
            eventClick: function (calEvent, jsEvent, view) {
                ShowEventDetails(calEvent.id);
                //alert(JSON.stringify(calEvent));
                //alert('You clicked on event id: ' + calEvent.id
                //    + "\nSpecial ID: " + calEvent.someKey
                //    + "\nAnd the title is: " + calEvent.title);
            },

            eventDrop: function (event, dayDelta, minuteDelta, allDay, revertFunc) {
                if (confirm("Confirm move?")) {
                    UpdateEvent(event.id, event.start);
                }
                else {
                    revertFunc();
                }
            },

            eventResize: function (event, dayDelta, minuteDelta, revertFunc) {

                if (confirm("Confirm change appointment length?")) {
                    UpdateEvent(event.id, event.start, event.end);
                }
                else {
                    revertFunc();
                }
            },

            dayClick: function (date, allDay, jsEvent, view) {
                $('#eventTitle').val("");
                $('#eventDate').val($.fullCalendar.formatDate(date, 'dd/MM/yyyy'));
                $('#eventTime').val($.fullCalendar.formatDate(date, 'HH:mm'));
                ShowEventPopup(date);
            },


            viewRender: function (view, element) {

                if (!CalLoading) {
                    if (view.name == 'month') {
                        $('#calendar').fullCalendar('removeEventSource', sourceFullView);
                        $('#calendar').fullCalendar('removeEvents');
                        $('#calendar').fullCalendar('addEventSource', sourceSummaryView);
                    }
                    else {
                        $('#calendar').fullCalendar('removeEventSource', sourceSummaryView);
                        $('#calendar').fullCalendar('removeEvents');
                        $('#calendar').fullCalendar('addEventSource', sourceFullView);
                    }
                }

            }

        });

        CalLoading = false;

        $('#btnPopupCancel').click(function () {
            ClearPopupFormValues();
            $('#popupEventForm').hide();
        });

        $('#btnInit').click(function () {
            $.ajax({
                type: 'POST',
                url: "/Calender/Init",
                success: function (response) {
                    if (response == 'True') {
                        $('#calendar').fullCalendar('refetchEvents');
                        alert('Database populated! ');
                    }
                    else {
                        alert('Error, could not populate database!');
                    }
                }
            });
        });
    });


    function ShowEventDetails(id) {

        $.ajax({
            type: 'POST',
            url: "/Calender/GetDiaryEventsforBinding",
            data: { 'id': id },
            success: function (data) {
                if (data != null) {


                    $("#MeetingId").val(data.collection[0].MeetingId);
                    $("#eventTitle").val(data.collection[0].MeetingSubject);
                    $("#eventDuration").val(data.collection[0].MeetingDuration);
                    $("#eventDate").val(formatDate(data.collection[0].ScheduledDate));
                    $("#eventTime").val(formatTime(data.collection[0].ScheduledDate));
                    var dataReq = data.collection[0].RequiredPersons;
                    var dataarray = dataReq.split(",");
                    $("#whoRequired").val(dataarray);
                    //$("#whoRequired").prop('disabled', 'disabled');
                    var mstatus = data.collection[0].MeetingStatus;
                    //alert(JSON.stringify(abc))
                    //$("#Status").val(data.collection[0].MeetingStatus);

                    $("#Status option[value= '" + mstatus + "']").attr("selected", "selected");

                    if (data.collection[0].MeetingRemainder == "0") {
                        $("#chkReminder").prop('checked', false)
                    }
                    else { $("#chkReminder").prop('checked', true) }
                    $("#txtdescription").val(data.collection[0].MeetingDescription);
                    $("#txtnotes").val(data.collection[0].Notes);
                }
                else {
                    alert('Error, could not populate database!');
                }
            }
        });

        //$("#eventDate").val(data.collection.EventStart);
        //$("#eventDate").val(data.collection.EventStart);
        $('#popupEventForm').show();
    }

    function ShowEventPopup(date) {
        ClearPopupFormValues();
        $('#popupEventForm').show();
        $('#eventTitle').focus();
    }

    function ClearPopupFormValues() {
        $('#eventID').val('');
        $('#eventTitle').val('');
        $('#txtdescription').val('');
        $('#chkReminder').checked
        $('#eventDuration').val('');
        $('#txtNotes').val('');
        $('#whoRequired').val('');

    }

    function UpdateEvent(EventID, EventStart, EventEnd) {
        var dataRow = {
            'ID': EventID,
            'NewEventStart': EventStart,
            'NewEventEnd': EventEnd
        }

        $.ajax({
            type: 'POST',
            url: "/Calender/UpdateEvent",
            dataType: "json",
            contentType: "application/json",
            data: JSON.stringify(dataRow)

        });
    }
</script>

<link href="~/Content/Calender/fullcalendar.css" rel="stylesheet" />
<script src="~/Scripts/fullcalendar.js"></script>
@model.AgentPortal.Models.MeetingVM
@使用Alis.AgentPortal.Helpers
@{
ViewBag.Title=“日历”;
Layout=“~/Views/Shared/_LayoutforMarketRep.cshtml”;
}
@节脚本{
@样式。渲染(“~/Content/calendar”)
@Scripts.Render(“~/bundles/modernizer”)
@Scripts.Render(“~/bundles/Scripts”)
}
$(文档).ready(函数(){
$.ajaxSetup({
缓存:false
});
函数SetValidate(){
var valMessage1=“”;
如果($(“#eventTitle”).val()=“”){
valMessage1=valMessage1+“请输入主题。”;
valMessage1=valMessage1+“\n”;
}
if($(“#eventDate”).val()=“”){
valMessage1=valMessage1+“请输入生效日期。”;
valMessage1=valMessage1+“\n”;
}
//如果($(“#状态”).val()=“”){
//valMessage1=valMessage1+“请输入会议状态。”;
//valMessage1=valMessage1+“\n”;
//}
var Req=$(“#whoRequired”).find(“:selected”).text();
如果(Req==null | | Req==“”){
valMessage1=valMessage1+“请输入所需人员。”;
valMessage1=valMessage1+“\n”;
}
变量数=/^[0-9]+$/;
if(!$('#eventDuration').val().match(数字)){
valMessage1=valMessage1+“请以数字形式输入约会长度。”;
valMessage1=valMessage1+“\n”;
}
返回valMessage1;
}
$(“#btnpoppupsave”)。单击(函数(){
如果(SetValidate()!=“”){
警报(SetValidate());
}
否则{
$('popupEventForm').hide();
var blkstr=“”;
$.each($(“#whoRequired”).val(),函数(idx2,val2){
blkstr=val2+“,”+blkstr;
});
var=”;
if($('chkReminder').prop('checked')){
提醒=正确;
}否则{
提醒=错误;
}
var数据行={
“MeetingId”:$(“#MeetingId”).val(),
“Title”:$(“#eventTitle”).val(),
“NewEventTime”:$(“#eventTime”).val(),
“WhoRequired”:blkstr,
“description”:$(“#txtdescription”).val(),
“状态”:$(“#状态”).val(),
“NewEventDate”:$(“#eventDate”).val(),
“Remider”:提醒,
“NewEventDuration”:$(“#eventDuration”).val(),
'Notes':$('#txtnotes').val(),
}
ClearPopupFormValues();
$.ajax({
键入:“POST”,
url:“/Calendar/SaveEvent”,
数据:dataRow,
成功:功能(响应){
如果(响应='True'){
$(“#日历”).fullCalendar('refetchEvents');
警报(“已保存新事件!”);
}
否则{
警报('错误,无法保存事件!');
}
}
});
}
});
var sourceFullView={url:'/Calender/GetDiaryEvents/'};
var sourceSummaryView={url:'/Calender/GetDiarySummary/'};
var CalLoading=true;
$(“#日历”).fullCalendar({
标题:{
左:“上一个,下一个今天”,
中心:'标题',
右图:“月,agendaWeek,agendaDay”
},
defaultView:'agendaDay',
是的,
全天时段:错,
是的,
慢分钟:15,
事件:'/Calendar/GetDiaryEvents/',
eventClick:函数(calEvent、jsEvent、view){
ShowEventDetails(calEvent.id);
//警报(JSON.stringify(calEvent));
//警报('您单击了事件id:'+calEvent.id
//+“\n特殊ID:”+calEvent.someKey
//+“\n标题为:“+calEvent.title”;
},
eventDrop:函数(事件、日增量、分钟增量、全天、回复函数){
如果(确认(“确认移动?”){
UpdateEvent(event.id,event.start);
}
否则{
revertFunc();
}
},
eventResize:函数(事件、日增量、分钟增量、回复函数){
如果(确认(“确认更改预约时间?”){
UpdateEvent(event.id、event.start、event.end);
}
否则{
revertFunc();
}
},
dayClick:函数(日期、全天、jsEvent、视图){
$('#eventTitle').val(“”);
$('eventDate').val($.fullCalendar.formatDate(日期,'dd/MM/yyyy'));
$('#eventTime').val($.fullCalendar.formatDate(date,'HH:mm'));
ShowEventPopup(日期);
},
viewRender:函数(视图、元素){
如果(!调用){
如果(view.name='month'){
$('#calendar').fullCalendar('removeEventSource',sourceFullView);
$(“#calendar”).fullCalendar('removeEvents');
$(“#日历”).fullCalendar('addEventSource',sourceSummaryView);
}
否则{