Events 用于在fullcalendar中加载项目任务的Ajax$.post方法
早上好 我想在我的mvc项目中添加一个完整的日历 当我尝试用项目任务编码json时,问题就出现了。我使用的代码如下所示: proyectosModel.phpEvents 用于在fullcalendar中加载项目任务的Ajax$.post方法,events,project,fullcalendar,task,Events,Project,Fullcalendar,Task,早上好 我想在我的mvc项目中添加一个完整的日历 当我尝试用项目任务编码json时,问题就出现了。我使用的代码如下所示: proyectosModel.php public function obtenerTareasProyecto($idProyecto){ $sql = "SELECT tareasProyectos.nombre as title, tareasProyectos.fechaInicio as start, tareasProyectos.fechaLimite
public function obtenerTareasProyecto($idProyecto){
$sql = "SELECT tareasProyectos.nombre as title, tareasProyectos.fechaInicio as start, tareasProyectos.fechaLimite as end, tareasProyectos.estado , proyectos.idProyecto, proyectos.nombre as NombreProyecto, usuarios.codUsuario, usuarios.nombre, usuarios.apellido1, usuarios.apellido2\n";
$sql .= "FROM tareasProyectos\n";
$sql .= "JOIN proyectos on tareasProyectos.FKidProyecto = proyectos.idProyecto\n";
$sql .= "JOIN usuarios on tareasProyectos.FKusuarioAsignado = usuarios.codUsuario\n";
$sql .= "WHERE tareasProyectos.FKidProyecto ='" . $idProyecto . "'";
$tareasProyecto = $this->_db->query($sql);
return $tareasProyecto->fetchall(PDO::FETCH_ASSOC);
}
public function obtenerTareasProyecto() {
echo json_encode($this->_proyectos->obtenerTareasProyecto($this->getTexto('idProyecto')));
}
proyectoscocontroller.php
public function obtenerTareasProyecto($idProyecto){
$sql = "SELECT tareasProyectos.nombre as title, tareasProyectos.fechaInicio as start, tareasProyectos.fechaLimite as end, tareasProyectos.estado , proyectos.idProyecto, proyectos.nombre as NombreProyecto, usuarios.codUsuario, usuarios.nombre, usuarios.apellido1, usuarios.apellido2\n";
$sql .= "FROM tareasProyectos\n";
$sql .= "JOIN proyectos on tareasProyectos.FKidProyecto = proyectos.idProyecto\n";
$sql .= "JOIN usuarios on tareasProyectos.FKusuarioAsignado = usuarios.codUsuario\n";
$sql .= "WHERE tareasProyectos.FKidProyecto ='" . $idProyecto . "'";
$tareasProyecto = $this->_db->query($sql);
return $tareasProyecto->fetchall(PDO::FETCH_ASSOC);
}
public function obtenerTareasProyecto() {
echo json_encode($this->_proyectos->obtenerTareasProyecto($this->getTexto('idProyecto')));
}
proyectos.js
$(document).ready(function(proyecto){
var cargarTareas = $.post('/distribucion/proyectos/obtenerTareasProyecto',
{
idProyecto: proyecto
}, function(datos){
//Here I need to link the title, start and end properties.
}, 'json'}
//Cargamos el calendario principal
$("#calendario").fullCalendar({
weekMode:'variable',
header:{ //Cabecera
left: 'month,basicWeek,agendaDay',
center: 'title',
right: 'today prev,next'
},
firstDay:1, //Primer día de la semana
selectable: true, //Fechas seleccionables
titleFormat:{//Formato del título del calendario
month: "MMMM yyyy",
week: "d 'de' MMMM",
day: "dddd, d 'de' MMMM, yyyy"
},
columnFormat:{
month:"dddd",
week:"dddd d/M",
day:"dddd d/M"
},
monthNames:['Enero','Febrero','Marzo','Abril','Mayo','Junio','Julio','Agosto','Septiembre','Octubre','Noviembre','Diciembre'],
monthNamesShort:['Ene','Feb','Mar','Abr','May','Jun','Jul','Ago','Sep','Oct','Nov','Dic'],
dayNames: ['Domingo', 'Lunes', 'Martes', 'Miércoles', 'Jueves', 'Viernes', 'Sábado'],
dayNamesShort:['Dom','Lun','Mar','Mie','Jue','Vie','Sab'],
buttonText:{
month:'mes',
week:'semana',
day: 'día',
today:'Hoy'
},
eventSources: [
{
events: //¿how can I do with the $.post() method?
}
]
});
}
在javascript文件中,我使用$.post()方法加载ajax,但我不知道如何请求每个事件或项目任务的标题、开始和结束属性
干杯。
Francisco J.我认为您需要做的是将php调用指定为
eventSource
,就像jquery.ajax示例中那样。您需要将参数指定为类似于
events: {
url: '/distribucion/proyectos/obtenerTareasProyecto',
type: 'POST',
data: {
idProyecto: proyecto
}
}
然后它将接收JSON返回并(如果格式正确)将其转换为日历事件
希望这有帮助 您的
datos
对象在post
函数中是什么样子的?它是否真的镜像了您期望从服务器获得的数据?谢谢,post函数中的DATO引用了我使用该模型从数据库获得的数据。我想我应该遍历数据库,但是如何才能将项目添加到fullcalendar?感谢advanced。我使用了$.post()jquery方法,但是当我更改到另一个月或在视图之间更改(月、基本周或基本日)时,我丢失了事件。我怎样才能坚持下去呢?感谢您的回复。亲爱的朋友,我使用设置为true的stick参数获得了它,并且在更改视图后日历仍然是事件。谢谢大家。弗朗西斯科J。