我正在尝试在项目中使用A Shaw的FullCalendar 2.0.0。该项目还使用Telerik控件。我相信有一个jQuery verion冲突,但我不确定。如果我在页面中不包含任何Telerik控件或引用,则日历显示正常。如果我包含任何Telerik控件/引用,我会收到javascript错误。
这是我添加了FullCalendar2.0.0的标记,它使用了JQuery v 1.11.1
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<title></title>
<link rel='stylesheet' href='../lib/cupertino/jquery-ui.min.css' />
<link href='../fullcalendar.css' rel='stylesheet' />
<link href='../fullcalendar.print.css' rel='stylesheet' media='print' />
<script src='../lib/moment.min.js'></script>
<script src='../lib/jquery.min.js'></script>
<script src='../lib/jquery-ui.custom.min.js'></script>
<script src='../mmd_fullcalendar200.js'></script>
<script>
$(document).ready(function() {
$('#claimCalendar').fullCalendar({
//code to initiate fullcalendar
});
});
</script>
这就是Telerik(使用JQuery v1.9.1)
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<title></title>
<telerik:RadStyleSheetManager ID="RadStyleSheetManager1" runat="server" />
<link rel='stylesheet' href='../lib/cupertino/jquery-ui.min.css' />
<link href='../fullcalendar.css' rel='stylesheet' />
<link href='../fullcalendar.print.css' rel='stylesheet' media='print' />
<script src='../lib/moment.min.js'></script>
<script src='../lib/jquery.min.js'></script>
<script src='../lib/jquery-ui.custom.min.js'></script>
<script src='../mmd_fullcalendar200.js'></script>
<script type="text/javascript">
$(document).ready(function() {
$('#claimCalendar').fullCalendar({
//code to initiate fullcalendar
});
});
</script>
</head>
<body>
<form id="form1" runat="server">
<telerik:RadScriptManager ID="RadScriptManager1" runat="server">
<Scripts>
<asp:ScriptReference Assembly="Telerik.Web.UI" Name="Telerik.Web.UI.Common.Core.js" />
<asp:ScriptReference Assembly="Telerik.Web.UI" Name="Telerik.Web.UI.Common.jQuery.js" />
<asp:ScriptReference Assembly="Telerik.Web.UI" Name="Telerik.Web.UI.Common.jQueryInclude.js" />
</Scripts>
</telerik:RadScriptManager>
当我尝试浏览使用Telerik的页面时。页面正确显示所有元素,但不呈现FullCalendar。具有FullCalendar ID的div位于标记中。我得到的错误是 Microsoft JScript运行时错误:对象不支持此属性或方法。断点位于$('#claimCalendar')。fullCalendar({
我怎样才能让两人好好玩?
答案 0 :(得分:0)
我已经能够通过覆盖针对jquery的Telerik脚本引用来修复此问题。
经过一些研究后,我发现了一个将路径参数放到空的js文件中的建议,因为......
<asp:ScriptReference Assembly="Telerik.Web.UI" Name="Telerik.Web.UI.Common.jQuery.js" Path="path/to/emptyJSfile" />
这不起作用,但我发现另一个建议,该文件不应该为空,但有以下内容......
$telerik.$ = window.$;
这是我认为将telerik jquery调用映射到当前加载的jquery。所以FullCalendar加载jQuery版本1.11.1而telerik使用它。
到目前为止一切似乎都很好。我有FullCalendar加载以及一个额外的链接到qTips2和一堆telerik控件,它们似乎都能正常运行。