我正在使用fullcalendar
脚本。当我加载日历时,我想检查是否设置了一些变量。我试过这个:
$(document).ready(function() {
var calendar = $('#calendar').fullCalendar({
if(mes != '') {
mes=1;
},
editable: false,
header: {
left: 'prev,next ',
center: 'title',
right: 'month,agendaWeek,agendaDay'
},
defaultView: 'agendaDay',
buttonText: {
today: 'hoy',
month: 'mes',
week: 'semana',
day: 'dia'
},
eventClick: function(calEvent, jsEvent, view) {
//al hacer clic en el evento, si estamos en el mes o semana que vaya al día
var vista=calendar.fullCalendar('getView').name;
if (vista=="month" | vista=="agendaWeek") {
//si estamos en vista de mes o semana, cambiamos a la del día
calendar.fullCalendar( 'changeView', "agendaDay");
calendar.fullCalendar('gotoDate', calEvent.start );
} else {
//si estamos en el vista de día
var color =calEvent.color;
var id_evento=calEvent._id;
document.form2.id_eve.value = id_evento;
document.forms["form2"].submit();
var ano=calEvent.year;
var mes=calEvent.month;
var dia=calEvent.day;
}
}
});
});
但它不起作用,声明是:
if(mes != '') {
mes=1;
},
它说我有语法错误。我怎么能解决这个问题并检查我的变量是否已设置?我也尝试过:
if(typeof mes != 'undefined')
但这会产生同样的错误。
答案 0 :(得分:5)
您尝试在数据中间使用if
语句。那不行。
你可以用这种方式达到同样的效果:
var calendar = $('#calendar').fullCalendar({
'mes': (typeof(mes) === 'undefined') ? 1 : mes,
// ...
答案 1 :(得分:3)
您不能将if
语句放在对象初始值设定项中。
目前还不清楚您要在何时何地进行此检查,但基本上它不能在您传入fullCalendar
的对象的初始值设定项中。它可以在之前的代码中,或者在其中一个回调中编码。
如果您正在创建的对象中有一个属性,您希望在mes
为!= ''
时给出一个值,否则为其他值,您可以做的是:
thePropertyName: mes != '' ? "value1" : "value2",
答案 2 :(得分:1)
你不能拥有if,你可以在初始化程序之外执行,或只使用mes != '' ? mes : 1,