0

我正在使用DHTMLX 调度程序,当单击弹出事件编辑器中的删除按钮时,我试图删除一个事件,下面是我的代码参考。

scheduler.attachEvent("onEventDeleted", function(id,ev){
    $.ajax({
         url : "calendar.php",
         type: 'post',
         data: { event_id : id},
         success: function(e){
             if($.trim(e) === "success"){
                 alert("Event was successfully deleted");
             }
         }
  });
});

上面的代码有效(事件已成功删除)但问题是,当我从弹出编辑器中单击取消按钮时,“onEventDeleted”也确实触发了。有什么想法、帮助、建议、建议、帮助吗?

4

1 回答 1

1

仅当您在创建新事件时按取消时才会发生这种情况。在这种情况下,预计会触发 onEventDeleted,因为它会从日历中删除新创建的事件。为了不将该更新发送到后端,您可以使用此方法 http://docs.dhtmlx.com/scheduler/api__scheduler_getstate.html

因此,如果您像以下一样更新代码,一切都应该很好:

scheduler.attachEvent("onEventDeleted", function(id,ev){
    if(scheduler.getState().new_event)
      return;

    $.ajax({
         url : "calendar.php",
         type: 'post',
         data: { event_id : id},
         success: function(e){
             if($.trim(e) === "success"){
                 alert("Event was successfully deleted");
             }
         }
  });
});
于 2016-02-10T10:10:52.010 回答