完整日历未呈现某些标题

问题描述 投票:0回答:1

我正在使用 fullCalendar 使用 html 和 php 每周显示事件。

这是 $(document).ready 函数内的代码:

            $.get("includes/get_office_opening_closing_maxRange.php")
            .done(function(data) {
                slotTime = JSON.parse(data);
                var calendarEl = document.getElementById('calendar');
                // if calendar already exists, destroy it
                if (calendar != null) {
                    calendar.destroy();
                }
                var calendar = new FullCalendar.Calendar(calendarEl, {
                    expandRows: true,
                    initialView: 'timeGridWeek',
                    slotMinTime: slotTime.min,
                    slotMaxTime: slotTime.max,
                    navLinks: false, // can click day/week names to navigate views
                    editable: false,
                    selectable: false,
                    nowIndicator: true,
                    dayMaxEvents: true, // allow "more" link when too many events
                    eventSources: [
                        {
                            url: 'includes/get_visits_events.php',
                            method: 'POST',
                            failure: function() {
                                alert('there was an error while fetching events!');
                            },
                            extraParams: {
                                medic: $("#slc_medic").val(),
                            },
                            // color: 'yellow',   // a non-ajax option
                            // textColor: 'black' // a non-ajax option
                        }
                    ],
                    eventClick: function(info) {
                        
                        $.post("includes/ajax_pat_detailcheck.php", {
                            idpatient: info.event.groupId
                        })
                        .done(function(data) {
                            if (data == 0) {
                                post_on_click("visdet.php", "visit_id", info.event.id);
                            } else {
                                $("#patientdetails #btn_mod_pat_details").attr('data-idtomod', info.event.groupId);
                                $("#patientdetails").modal('show');
                            }
                        });
                    },

                    firstDay: 1,
                    headerToolbar: {
                        left: 'prev,next today',
                        center: 'title',
                        // right: 'dayGridMonth,dayGridWeek,dayGridDay'
                        right: ''
                    },
                    // initialDate: '2024-05-24',
                });
                calendar.setOption('locale', 'it');
                calendar.render();
            });
        }

该项目是关于医疗办公室及其预约。 此代码检查整个星期的办公室开放和关闭时间,以设置开始时间和停止时间。然后创建日历,从 php api 检索所有事件。仅在周视图中设置的视图 ID。 这就是我得到的:

enter image description here

如您所见,在某些事件中,标题根本不显示或仅部分显示。 html代码是:

                                <div class="card border-0 card-body h-fit-content" style="padding-top:0.5rem;padding-bottom:0;margin-bottom:0.5rem;">
                                    <div id='calendar'></div>
                                </div>

此外,当我将鼠标悬停在事件上时,即使我禁用了可编辑,鼠标指针也会变成“移动指针”,并且我想保留正常指针或指示事件可单击的指针,因为它是可单击的。 我会添加图像,但是当我制作屏幕截图时,它会删除指针

javascript html jquery css fullcalendar
1个回答
0
投票

抱歉耽搁了,这周我遇到了一些麻烦。 顺便说一句,这是悬停时指针问题的照片。

enter image description here

此外,我尝试制作一个片段来向您展示我做了什么,但我无法使其发挥作用。简而言之,如果我设置一个大的高度和一个eventMinHeight,标题都显示出来,但问题是2: 1-我不能使用固定高度和固定 eventMinHeight,因为它取决于一天有多少个事件以及名称有多长 2-如果我找到第一个问题的解决方案,正如您在照片中看到的那样,事件会相互溢出并且没有任何内容可读

请帮帮我:(

    $(document).ready(function() {

                    var calendarEl = document.getElementById('calendar');
                    // if calendar already exists, destroy it
                    if (calendar != null) {
                        calendar.destroy();
                    }
                    var calendar = new FullCalendar.Calendar(calendarEl, {
                        expandRows: true,
                        initialView: 'timeGridWeek',
                        slotMinTime: "08:00",
                        slotMaxTime: "21:00",
                        initialDate: '2024-06-12',
                        eventMinHeight : '80',
                        contentHeight: '80',
                        height: '400px',
                        navLinks: false, // can click day/week names to navigate views
                        // editable: false,
                        // selectable: true,
                        nowIndicator: true,
                        dayMaxEvents: true, // allow "more" link when too many events
                        events: [
                            {
                                title: 'event1',
                                start: '2024-06-12T10:00:00',
                                end: '2024-06-12T12:00:00',
                                backgroundColor: 'red',
                                borderColor: 'red',
                                textColor: 'white',
                                editable: false
                            },
                            {
                                title: 'event2',
                                start: '2024-06-12T13:00:00',
                                end: '2024-06-12T15:00:00',
                                backgroundColor: 'green',
                                borderColor: 'green',
                                textColor: 'white',
                                editable: false
                            }
                        ],
                        firstDay: 1,
                        headerToolbar: {
                            left: 'prev,next today',
                            center: 'title',
                            // right: 'dayGridMonth,dayGridWeek,dayGridDay'
                            right: ''
                        },
                        // initialDate: '2024-05-24',
                    });
                    calendar.setOption('locale', 'it');
                    calendar.render();
                    calendar.updateSize()

    });
<script src="https://cdn.jsdelivr.net/npm/[email protected]/index.global.min.js"></script>
<script src="https://code.jquery.com/jquery-3.6.0.min.js"></script>


    <div id="main-wrapper">
        <div class="content-body m-0 ">
            <div class="container-fluid">
                <div class="row">
                    <div class="col-xl-12">
                        <div class="card">
                            <div class="card-body p-0">
                                <div class=" p-3 col-lg-12 row" style="overflow: inherit;">
                                    <div class="card border-0 card-body h-fit-content" style="padding-top:0.5rem;padding-bottom:0;margin-bottom:0.5rem;">
                                        <div id='calendar' style="display: none;" ></div>
                                    </div>
                                </div>
                            </div>
                        </div>
                    </div>
                </div>
            </div>
        </div>
    </div>

© www.soinside.com 2019 - 2024. All rights reserved.