Я генерирую события в fullCalendar с этим кодом
<script type="text/javascript">
$(document).ready(function() {
$('#calendar').fullCalendar({
// put your options and callbacks here
header: {
right: 'today month,agendaWeek,agendaDay prev,next'
},
events: [
<?php foreach($cal_data as $row): ?>
{
title : '<?php echo $row->plant_name . ' ' . $row->value_2; ?>',
start : '<?php echo $row->date . ' ' . $row->time; ?>',
allDay: false,
url : '<?php echo base_url() . 'events/events_edit/' . $row->record_id; ?>'
},
<?php endforeach; ?>
],
});
});
</script>
Это прекрасно работает для отображения данных. Когда я нажимаю на событие, новая страница загружается для редактирования.
Теперь мне нужно отредактировать внутри всплывающего окна jQuery Fancybox.
Основываясь на API fullCalendar, я бы использовал
eventClick: function(event) {
if (event.url) {
window.open(event.url);
return false;
}
}
Я использую этот код Fancybox по всему проекту для успешного редактирования других вещей во всплывающих окнах:
$.fancybox({
'transitionIn': 'none',
'transitionOut': 'none',
'type': 'ajax',
'href': link,
'onClosed': function() {
parent.location.reload(true);
}
});
$.bind("submit", function() {
$.fancybox.showActivity();
$.ajax({
type: "POST",
cache: false,
data: $(this).serializeArray(),
success: function(data) {
$.fancybox(data);
}
});
return false;
});
Но я не смог интегрировать его в скрипт fullCalendar.
Например, это не работает:
eventClick: function(event) {
if (event.url) {
$.fancybox({
'transitionIn': 'none',
'transitionOut': 'none',
'type': 'ajax',
'href': link,
'onClosed': function() {
parent.location.reload(true);
}
});
$.bind("submit", function() {
$.fancybox.showActivity();
$.ajax({
type: "POST",
cache: false,
data: $(this).serializeArray(),
success: function(data) {
$.fancybox(data);
}
});
return false;
});
return false;
}
}
Любые предложения, как это сделать?
Большое спасибо за помощь!