2017-03-08 63 views
0

我有這個問題與fullcalendar,當我編輯事件一切pelicctly,但如果我嘗試編輯另一個事件,第一個我編輯總是得到修改。javascript Fullcalendar,當試圖編輯事件時,它總是編輯我點擊的第一個,

eventClick: function(calEvent, jsEvent, view) { 
      var title = calEvent.title; 
      alert(calEvent.idcita); 
      var idcita = calEvent.idcita; 
      $("#titulo2").val(title); 
      $("#idCita").text(idcita); 
      $("#startTime").html(moment(calEvent.start).format('D MMM h:mm A')); 
      $("#endTime").html(moment(calEvent.end).format('D MMM h:mm A')); 
      $("#eventInfo").html(calEvent.description); 
      $("#eventContent").dialog({ modal: true, title: calEvent.title, width:350}); 


     $(".antosubmit2").on("click", function() { 
      var title = $("#titulo2").val(); 
      idcita = $("#idCita").text() 
     if (title) { 
       calEvent.title = title; 
       var startw = calEvent.start; 
       var endedw = calEvent.end; 
       started = moment(startw,'YYYY-MM-DD hh:mm A'); 
       ended = moment(endedw,'YYYY-MM-DD hh:mm A'); 
      $.ajax({ 
        url: '/calendar/mod_cita', 
        data: 'id='+idcita+'&title='+calEvent.title+'&start='+started.format('YYYY-MM-DD HH:MM:SS')+'&end='+ended.format('YYYY-MM-DD HH:MM:SS'), 
        type: 'POST', 
        dataType: 'json', 
        success: function(response){ 
         // event.id = response.eventid; 
         calEvent.idcita = response.id; 
         $('#calendar').fullCalendar('updateEvent',calEvent); 
         console.log('Se edito correctamente'); 
        }, 
        error: function(e){ 
        // console.log(e.responseText); 
        } 

        }); 
       alert('dentro de editar:'+idcita+'y el evento es:'+calEvent.idcita); // Here I get the correct id for the clicked event but always the same calEvent (clicked the first time) 

     $('#titulo2').val(''); 
      $('#calendar').fullCalendar('rerenderEvents') 
      $('#calendar').fullCalendar('refresh') 
     $('#calendar').fullCalendar('unselect'); 
     $("#eventContent").dialog('close'); 

     }; 
    }); 

我已經閱讀文檔很多次,但我不知道這一點,爲什麼作爲選擇,我點擊了住宿的第一個事件? 我正在使用.fullcalendar('unselect')方法。 添加功能可以正常工作 調整大小的工作確定它並不重要多少次我嘗試 從1日期更改爲其他作品ok 刪除我可以刪除1個或幾個事件,這裏沒有問題。

但我只能編輯1個事件。

回答

0

我發現了錯誤,這是它的代碼。我應該把ajax放在對話框的按鈕功能中。

eventClick: function(calEvent, jsEvent, view) { 
      var title = calEvent.title; 
      var idcita = calEvent.idcita; 
      var origEvent = calEvent; 
      $("#titulo2").val(title); 
      $("#idCita").text(idcita); 
      $("#startTime").html(moment(calEvent.start).format('D MMM h:mm A')); 
      $("#endTime").html(moment(calEvent.end).format('D MMM h:mm A')); 
      $("#eventInfo").html(calEvent.description); 
      $("#eventContent").dialog({ 
       sutoOpen: false, 
       modal: true, 
       draggable: true, 
       title: calEvent.title, 
       width:350, 
      buttons: { 
    "Salvar": function() { 
     var title = $("#titulo2").val(); 
      idcita = $("#idCita").text() 
       calEvent.title = title; 
       var startw = calEvent.start; 
       var endedw = calEvent.end; 
       started = moment(startw,'YYYY-MM-DD hh:mm A'); 
       ended = moment(endedw,'YYYY-MM-DD hh:mm A'); 
      $.ajax({ 
        url: '/calendar/mod_cita', 
        data: 'id='+idcita+'&title='+calEvent.title+'&start='+started.format('YYYY-MM-DD HH:MM:SS')+'&end='+ended.format('YYYY-MM-DD HH:MM:SS'), 
        type: 'POST', 
        dataType: 'json', 
        success: function(response){ 
         // event.id = response.eventid; 
         calEvent.idcita = response.id; 
         $('#calendar').fullCalendar('updateEvent',calEvent); 
         console.log('Se edito correctamente'); 
        }, 
        error: function(e){ 
        // console.log(e.responseText); 
        } 

        }); 

     $('#titulo2').val(''); 
      $('#calendar').fullCalendar('rerenderEvents') 
      $('#calendar').fullCalendar('refresh') 
     $('#calendar').fullCalendar('unselect'); 
     //$("#eventContent").dialog('close'); 
     // $('.antoclose2').click(); 

     $(this).dialog("close"); 
    } 
} 
      }); 
      $("#eventContent").dialog('open'); 

     }, 
+0

你應該編輯你的問題,而不是發佈答案。 –

+0

對不起,我自己弄明白了,現在我應該編輯這個問題吧? – hugmax

相關問題