jquery - Fullcalendar 不在 Bootstrap 模式中呈现

标签 jquery html twitter-bootstrap fullcalendar

我正在尝试使用 bootstrap/jquery 在模式对话框中显示完整日历。 当模态出现时,除非选择“今天”按钮,否则日历最初不会显示。

我读到我应该使用:

$("#calendar").fullCalendar('render');

这似乎行不通。

我在这里重现了整个问题。我使用链接作为引用,因此如果您在 Chrome 中运行此脚本,您可以看到问题。

<!DOCTYPE html>
<html>
<head>
    
<link href="http://netdna.bootstrapcdn.com/bootstrap/3.0.2/css/bootstrap.min.css" rel="stylesheet" type="text/css"/>
<link href="http://cdnjs.cloudflare.com/ajax/libs/fullcalendar/1.6.4/fullcalendar.css" rel="stylesheet"/>
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.11.2/jquery.min.js"></script>
<script src="http://netdna.bootstrapcdn.com/bootstrap/3.0.2/js/bootstrap.min.js" type="text/javascript"></script>        
<!-- IMPORTANT! fullcalendar depends on jquery-ui.min.js for drag & drop support -->
<script src="http://cdnjs.cloudflare.com/ajax/libs/fullcalendar/1.6.4/fullcalendar.min.js"></script>

</head>
<body>
<a data-toggle="modal" id="add_appointment" href="#modal_form_addappt" class="btn btn-default btn-sm">Add... </a>
    
<!-- /.modal -->
<div class="modal fade" id="modal_form_addappt" tabindex="-1" role="dialog" aria-hidden="true">
    <div class="modal-dialog">
        <div class="modal-content">
            <div class="modal-header">
                <h4 class="modal-title">Add New Appointment...</h4>
            </div>
            <div class="modal-body">

                <div id="calendar"></div>
                
            </div>
            <div class="modal-footer">
		      <button class="btn" data-dismiss="modal" aria-hidden="true">Close</button>
		      <button class="btn btn-primary">Save changes</button>
	       </div>
        </div>
        <!-- /.modal-content -->
    </div>
    <!-- /.modal-dialog -->
</div>
<!-- /.modal -->

<script>
           
$("#calendar").fullCalendar({
});
    
$('#modal_form_addappt').on('show.bs.modal', function () {
       $("#calendar").fullCalendar('render');
});
    
</script>
    
</body>
       
</html>

最佳答案

你用错了方法。将 show.bs.modal 更改为 shown.bs.modal:

<!DOCTYPE html>
<html>
<head>
    
<link href="http://netdna.bootstrapcdn.com/bootstrap/3.0.2/css/bootstrap.min.css" rel="stylesheet" type="text/css"/>
<link href="http://cdnjs.cloudflare.com/ajax/libs/fullcalendar/1.6.4/fullcalendar.css" rel="stylesheet"/>
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.11.2/jquery.min.js"></script>
<script src="http://netdna.bootstrapcdn.com/bootstrap/3.0.2/js/bootstrap.min.js" type="text/javascript"></script>        
<!-- IMPORTANT! fullcalendar depends on jquery-ui.min.js for drag & drop support -->
<script src="http://cdnjs.cloudflare.com/ajax/libs/fullcalendar/1.6.4/fullcalendar.min.js"></script>

</head>
<body>
<a data-toggle="modal" id="add_appointment" href="#modal_form_addappt" class="btn btn-default btn-sm">Add... </a>
    
<!-- /.modal -->
<div class="modal fade" id="modal_form_addappt" tabindex="-1" role="dialog" aria-hidden="true">
    <div class="modal-dialog">
        <div class="modal-content">
            <div class="modal-header">
                <h4 class="modal-title">Add New Appointment...</h4>
            </div>
            <div class="modal-body">

                <div id="calendar"></div>
                
            </div>
            <div class="modal-footer">
		      <button class="btn" data-dismiss="modal" aria-hidden="true">Close</button>
		      <button class="btn btn-primary">Save changes</button>
	       </div>
        </div>
        <!-- /.modal-content -->
    </div>
    <!-- /.modal-dialog -->
</div>
<!-- /.modal -->

<script>
           
$("#calendar").fullCalendar({
});
    
$('#modal_form_addappt').on('shown.bs.modal', function () {
       $("#calendar").fullCalendar('render');
});
    
</script>
    
</body>
       
</html>

show 被调用以显示模态,shown 在显示模态时被调用,因此使用它允许它在模态打开时显示。

关于jquery - Fullcalendar 不在 Bootstrap 模式中呈现,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29570155/

相关文章:

javascript - 多级列表中的大写首字母(JS、JQUERY)

jquery - 使用 css 和 jquery 在菜单悬停上创建自定义形状背景图像

html - Z-Index 不适用于 div 框

javascript - 单击自定义编辑按钮可进行 X-editable 切换编辑

javascript - 如何在导航栏中使用多个下拉菜单?

javascript - 输入触发器按钮单击

javascript - 使用 jquery/javascript 的正整数值

JavaScript window.location.assign() 不起作用

javascript - 选择框中的滚动条未出现

html - 使用 Bootstrap 集中对象