alert/Confirm使用fullCalendar eventClick在bootsrap模式上多次触发



我在fullcalendar上使用函数eventClick,我有以下问题,每当我单击某个事件时,一个模态就会打开,我可以编辑这个特定的事件,当我单击save(使用另一个onclick函数)时,会有一个确认,它的启动次数与之前打开该模态的次数一样多。

让我用我的代码解释一下。。

    eventClick: function (calEvent, jsEvent, view) {
    $('#myModalEditEvent').modal('show');
    $("#deleteEventfromEditModal").click(function () {
                if (!confirm("are you sure?")) {
                    return 0;
                }
                else {
                    var classID = calEvent.id;
                    var deleteRequest = {
                        classID: classID,
                    };
                    var dataString = JSON.stringify(deleteRequest); // parsing the request above. 
                    $.ajax({     // starting an  ajax func 
                        })
                };
            });  
 }

这是我的html代码:

<div class="modal fade" id="myModalEditEvent" role="dialog">
    <div class="modal-dialog modal-sm">
        <div class="modal-content">
            <div class="modal-header">
                <button type="button" class="close" data-dismiss="modal">&times;</button>
                <h4 class="modal-title" id="EditEventHeader"></h4>
            </div>
            <div class="modal-body">
                <div class="form-group">
                    <select id="ClassesDDLEdit" class="form-control"></select>
                </div>
                <div class="form-group">
                    <select id="GuidesDDLEdit" class="form-control"></select>
                </div>
                <div class="input-group bootstrap-timepicker timepicker">
                    <input id="classStartTimeEdit" type="text" class="form-control input-small" placeholder="Start time">
                    <span class="input-group-addon"><i class="glyphicon glyphicon-time"></i></span>
                </div><br />
                <div class="input-group bootstrap-timepicker timepicker">
                    <input id="classEndTimeEdit" type="text" class="form-control input-small" placeholder="start time">
                    <span class="input-group-addon"><i class="glyphicon glyphicon-time"></i></span>
                </div><br />
                <div class="modal-footer">
                    <button type="button" id="AddEventAfetEditing" class="btn btn-info center-block" data-toggle="modal" data-target="#myModalEditEvent">Save</button><br />
                    <button type="button" id="deleteEventfromEditModal" class="btn btn-danger glyphicon glyphicon-trash center-block" data-toggle="modal" data-target="#myModalEditEvent"></button>
                </div>
            </div>
        </div>
    </div>
</div>

我能做些什么来防止它发生?

感谢所有的帮助!

更改以下行

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

如下

$("#deleteEventfromEditModal").unbind( "click" ).click(function () {

因为每次点击都会绑定一个点击事件。因此,每次

时都需要解除绑定

您应该执行此

 $("#deleteEventfromEditModal").click(function () {
              ...
 });  

例如在eventClick之外并在页面加载中执行。

$(document).ready(function(e){...})

相关内容

  • 没有找到相关文章

最新更新