简体   繁体   English

在 Fullcalendar js 上使用 Bootstrap Modal

[英]Use Bootstrap Modal on Fullcalendar js

I have a question, I am having a hard time to figure out a way to use bootstrap modal in fullcalendar.我有一个问题,我很难找到一种在 fullcalendar 中使用引导模式的方法。 What I am trying to do is when you click on the event on the calendar, the modal will pop-up and provide the full name of the event and summary of the event.我想要做的是当您单击日历上的事件时,模式将弹出并提供事件的全名和事件摘要。

The following is the code I am using to generate the calendar:以下是我用来生成日历的代码:

<cffunction name="FullCalendar">

    <cfscript>

        var calendarid = $.getbean('content').loadby(title='Regal Events').getcontentid();


    </cfscript>
    <cfsavecontent variable="local.str">
        <cfoutput>           

                 <div id="UpcomingCal" class="calendarResize">
                 </div>
                 <div id="fullCalModal" class="modal fade">
                    <div class="modal-dialog">
                        <div class="modal-content">
                            <div class="modal-header">
                                <button type="button" class="close" data-dismiss="modal"><span aria-hidden="true">×</span> <span class="sr-only">close</span></button>
                                <h4 id="modalTitle" class="modal-title"></h4>
                            </div>
                            <div id="modalBody" class="modal-body"></div>
                            <div class="modal-footer">
                                <button type="button" class="btn btn-default" data-dismiss="modal">Close</button>
                                <button class="btn btn-primary"><a id="eventUrl" target="_blank">Event Page</a></button>
                            </div>
                        </div>
                    </div>
                </div>
         <script>

         mura.loader()
            .loadcss("#$.siteConfig('requirementspath')#/fullcalendar/fullcalendar.css",{media:'all'})
            .loadcss("#$.siteConfig('requirementspath')#/fullcalendar/fullcalendar-custom.css",{media:'all'})
            .loadcss("#$.siteConfig('requirementspath')#/fullcalendar/fullcalendar.print.css",{media:'print'})
            .loadjs(
                "#$.siteConfig('requirementspath')#/fullcalendar/lib/moment.min.js",
                "#$.siteConfig('requirementspath')#/fullcalendar/fullcalendar.min.js",
                "#$.siteConfig('requirementspath')#/fullcalendar/gcal.js",
                function(){
                     $('##UpcomingCal').fullCalendar({
                         weekMode: 'variable',
                         eventSources: [
                            {
                                $('#eventUrl'): '#variables.$.siteConfig('requirementspath')#/fullcalendar/proxy.cfc?calendarid=#esapiEncode("javascript",CalendarID)#'
                                , type: 'POST'
                                , data: {
                                    method: 'getFullCalendarItems'
                                    , calendarid: '#esapiEncode("javascript",CalendarID)#'
                                    , siteid: '#variables.$.content('siteid')#'
                                    , categoryid: '#esapiEncode('javascript',variables.$.event('categoryid'))#'
                                    , tag: '#esapiEncode('javascript',variables.$.event('tag'))#'
                                }
                                <!---, color: '#this.calendarcolors[colorIndex].background#'
                                , textColor: '#this.calendarcolors[colorIndex].text#'--->
                                , error: function() {
                                    $('##mura-calendar-error').show();
                                }
                            },
                        ]
                    });
                }
               )
         </script>

        </cfoutput>
    </cfsavecontent>
    <cfreturn local.str />
</cffunction>

As you can see above, I have included the bootstrap modal.正如你在上面看到的,我已经包含了引导模式。 However, I am not sure how to add the following code so that when you click on the event, the modal appears:但是,我不确定如何添加以下代码,以便在单击事件时显示模态:

$(document).ready(function() { 
$('#bootstrapModalFullCalendar').fullCalendar({
    events: '/hackyjson/cal/',
    header: {
        left: '',
        center: 'prev title next',
        right: ''
    },
    eventClick:  function(event, jsEvent, view) {
        $('#modalTitle').html(event.title);
        $('#modalBody').html(event.description);
        $('#eventUrl').attr('href',event.url);
        $('#fullCalModal').modal();
    }
});

}); });

Any help would be appreciated任何帮助,将不胜感激

Thanks谢谢

Your problem is not is not related to javascript, bootstrap or fullcalendar.您的问题与 javascript、bootstrap 或 fullcalendar 无关。

I created a minimal test case to help you out and it works.我创建了一个最小的测试用例来帮助你,它的工作原理。

You should check coldfusion and mura.loader code.您应该检查 Coldfusion 和 mura.loader 代码。

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM