0

我想使用我自己的模式窗口在我的 DayPilot 调度程序上创建一些事件。创建第一个事件时它工作正常。之后,该事件与新创建的事件一起增加一倍、三倍等等。似乎 args 没有变空。这是我的 onTimeRangeSelected 代码:

    dp.onTimeRangeSelected = function (args) {

$('#myModal').show();
  
$('.schedule_option').click(function(){
        $('#myModal').hide();
        dp.clearSelection();
        var txt=this.getAttribute("arg");
        var colour = this.style.backgroundColor;
        var e = new DayPilot.Event({
            start: args.start,
            end: args.end,
            id: DayPilot.guid(),
            resource: args.resource,
            text: txt,
            backColor:colour
        });
        
        
        var params = {
                    start: args.start,
                    end: args.end,
                    text: txt,
                    backColor:colour,
                    id:DayPilot.guid(),
                    resource: args.resource
                };
                
        DayPilot.Http.ajax({
                    url: "admin/backend_create.php",
                    method: "POST",
                    data: params,
                    success: function(ajax) {
                        dp.message("succes");
                        
                    },
                     error: function(ajax) {
                     dp.message("Saving failed");
      }
                });     
        dp.events.add(e); 
}); 
  
}

我得到的效果是:

在此处输入图像描述

modal 包含 3 个按钮,对应每个要调度的事件类型。

如果我使用 DayPilot 模式,我没有问题。我找不到解释,因为不知何故直到上周五才奏效。

谢谢!

4

1 回答 1

1

好的。我发现了这个问题。每次选择时间范围时都会添加单击事件处理程序。我将不得不把它从那里拿出来并找到另一种使用我自己的模态的方法。

于 2020-10-20T06:55:22.040 回答