我正在尝试将fullcalendar和datepicker链接在一起,为自己形成一个漂亮的日历,但是我遇到了以下错误代码:
错误讯息:
$(" #datepicker")。datepicker不是函数
这是我的代码:
<link rel='stylesheet' type='text/css' href='../fullcalendar/fullcalendar.css' />
<link rel='stylesheet' type='text/css' href='../fullcalendar/fullcalendar.print.css' media='print' />
<link href="../scripts/jquery-ui-1.7.3.custom.css" rel="stylesheet" type="text/css" />
<link rel="stylesheet" href="../Styles/dark-hive/jquery.ui.all.css">
<script src="../jquery/jquery-1.7.1.js"></script>
<script type='text/javascript' src='../jquery/jquery-ui-1.8.17.custom.min.js'></script>
<script src="../jquery/ui/jquery.ui.core.js"></script>
<script src="../scripts/ui/jquery.ui.datepicker.js"></script>
<script type='text/javascript' src='../fullcalendar/fullcalendar.min.js'></script>
<script type='text/javascript'>
$(function() {
$('#calendar').fullCalendar({
theme: true,
header: {
left: '',
center: '',
right: ''
},
defaultView: 'agendaDay',
editable: false,
events: "../fullcalendar/JSONcreator"
});
$('#datepicker').datepicker({
inline: true,
onSelect: function(dateText, inst) {
var d = new Date(dateText);
$('#calendar').fullCalendar('gotoDate', d);
}
});
})
</script>
另外,有没有办法摆脱顶部的一些JQuery脚本调用?太多了,看起来很乱,但我是JQuery的新手。
答案 0 :(得分:6)
您在页面加载fullcalendar.min.js
,jquery-1.7.1.js
和jquery.ui.core.js
之前加载jquery.ui.datepicker.js
。将它放在它们下面,否则无法扩展它们的功能。
您还可以通过将jQuery函数放在一个<script>
标记中而不是两个来减少代码:
<script type='text/javascript'>
$(function() {
$('#calendar').fullCalendar({
theme: true,
header: {
left: '',
center: '',
right: ''
},
defaultView: 'agendaDay',
editable: false,
events: "../fullcalendar/JSONcreator"
});
$('#datepicker').datepicker({
inline: true,
onSelect: function(dateText, inst) {
var d = new Date(dateText);
$('#calendar').fullCalendar('gotoDate', d);
}
});
})
</script>
答案 1 :(得分:0)
您可以合并jQuery:
$(document).ready(function() {
// fullCalendar
$('#calendar').fullCalendar({
theme: true,
header: {
left: '',
center: '',
right: ''
},
defaultView: 'agendaDay',
editable: false,
events: "../fullcalendar/JSONcreator"
});
// jQuery UI datepicker
$('#datepicker').datepicker({
inline: true,
onSelect: function(dateText, inst) {
var d = new Date(dateText);
$('#calendar').fullCalendar('gotoDate', d);
}
});
});
您应该只有一个$(document).ready(function() {});
声明。将其保留在底部的<script>
标记内。这与调用load
的事件监听器相同:window.addEventListener('load', function(){}, false);
另外,请确保在>>声明之前加载脚本。