87,915
社区成员
发帖
与我相关
我的任务
分享
<head>
<link rel='stylesheet' type='text/css' href='${base}/components/fullcalendar/fullcalendar.css' />
<link rel='stylesheet' type='text/css' href='${base}/components/fullcalendar/fullcalendar.print.css' media='print' />
<script type='text/javascript' src='${base}/js/jquery-ui-1.10.2.custom.min.js'></script>
<script type='text/javascript' src='${base}/components/fullcalendar/fullcalendar.min.js'></script>
<script type='text/javascript' src='${base}/components/fullcalendar/gcal.js'></script>
<script language="javascript">
$(document).ready(function(){
if ($('#calendar') != null) {
var date = new Date();
var d = date.getDate();
var m = date.getMonth();
var y = date.getFullYear();
$('#calendar').fullCalendar({
header: {
left: 'prev,next today',
center: 'title',
right: 'month,basicWeek,basicDay'
},
dayClick: function(date, allDay, jsEvent, view) {
$(this).css('background-color', 'red');
var clickDate = view.calendar.formatDate(date,'yyyyMMdd');
window.location="${base}/admin/manager/holiday/save.action?holiday.date="+clickDate;
},
eventClick: function(calEvent, jsEvent, view) {
window.location="${base}/admin/manager/holiday/load.action?event.id="+calEvent.id;
},
firstDay: 0,
monthNames: ['1月','2月','3月','4月','5月','6月','7月','8月','9月','10月','11月','12月'],
monthNamesShort: ['1月','2月','3月','4月','5月','6月','7月','8月','9月','10月','11月','12月'],
dayNames: ['周日','周一','周二','周三','周日','周五','周六'],
dayNamesShort: ['日','一','二','三','四','五','六'],
buttonText: {
prev: ' ◄ ',
next: ' ► ',
prevYear: ' << ',
nextYear: ' >> ',
today: '今天',
month: '月',
week: '周',
day: '日'
},
viewDisplay: function (view) {//动态把数据查出,按照月份动态查询
var viewStart = $.fullCalendar.formatDate(view.start, "yyyyMMdd");
var viewEnd = $.fullCalendar.formatDate(view.end, "yyyyMMdd");
var URL="${base}/admin/manager/holiday/list.action";
$.ajax({
url:URL,
type:'POST',
data:{viewStart:viewStart,viewEnd:viewEnd},
dataType:'html'
});
var days=${jsonDate};
var currentDate=view.start;
setFocusDays(days,currentDate);
},
titleFormat: {
month: 'yyyy年MMMM',
week: "yyyy年MMMd{ '—' d}日",
day: 'yyyy年MMMMd日 dddd'
},
columnFormat: {
month: 'ddd',
week: 'ddd M/d',
day: 'dddd M/d'
},
timeFormat: { // for event elements
'': 'HH:mm-' // default
}
});
}
if($.browser.msie){
alert('1111');
$("#calendar .fc-header-left").append('<span><input type="text" id="selecteddate" size="8" maxLength="10" class="mcrm-input"><SPAN class=fc-header-space></SPAN><span id="selectdate" title="查询日期格式为:yyyy-mm-dd" class="fc-button fc-state-default fc-corner-left fc-corner-right"><span class=fc-button-inner><SPAN class=fc-button-content><@ww.text name="search"/></span></span></span></span>');
}else{
alert('1111');
$("#calendar .fc-header-left").append('<span><input type="text" id="selecteddate" size="8" maxLength="10" class="mcrm-input"><SPAN class=fc-header-space></SPAN><span id="selectdate" title="查询日期格式为:yyyy-mm-dd" class="fc-button fc-state-default fc-corner-left fc-corner-right"><span class=fc-button-inner><SPAN class=fc-button-content><@ww.text name="search"/></span></span></span></span>');
}
$("#selectdate").click(function() {
var selectdstr = $("#selecteddate").val();
var selectdate = $.fullCalendar.parseDate(selectdstr, "yyyy-mm-dd");
$('#calendar').fullCalendar( 'gotoDate', selectdate.getFullYear(), selectdate.getMonth(), selectdate.getDate());
});
$("#selecteddate").datepicker({ changeMonth: true,
changeYear: true,
showButtonPanel: true,
dateFormat: 'yy-mm-dd',
showOtherMonths: true,
yearRange: '-10:+10',
duration: 'fast',
buttonImage: '${base}/images/default/date.png',
showOn: 'button',
buttonImageOnly: true,
buttonText: '选择时间'
});
});
function setFocusDays(days,currentDate) {
//获取fullCalendar显示日期的div容器
var divDay = $('#calendar div.fc-day-number'), d, td,currentYear = currentDate.getFullYear(), currentMonth = currentDate.getMonth();
var divMonth=$('#calendar div.fc-month-number');
for (var i = 0; i < days.length; i++) {
var yearStr=days[i].date.substr(0,4);
var monthStr=days[i].date.substr(4,2);
var dstr=days[i].date.substr(6,6);
if (yearStr != currentYear || monthStr != currentMonth+1) continue;//不是当前年和月份继续下一次循环
if(dstr<10){
dstr=dstr.substr(1,1);
}
d = dstr; //获取日部分数据
divDay.each(function () {//遍历fullCalendar日部分
td = $(this).closest('td');
//对比成功,还需要判断这个日期不是其他月份
if (this.innerHTML == d && td.attr('class').indexOf('fc-other-month') == -1) {
td.css({ 'background-color': 'red', color: 'white'});
}
});
}
}
</script>
<style type='text/css'>
#calendar {
width: 900px;
margin: 0 auto;
}
#cls {
'background-color': 'red',
color: 'white'
}
</style>
</head>
<div class="yui-b">
<div class="yui-gb">
<div></div>
<div id='calendar'></div>
</div>
</div>