未捕获的TypeError:Undefined不是MVC C#中使用fullcalendar的函数问题

时间:2014-07-14 05:49:44

标签: javascript fullcalendar uncaught-typeerror

我正在尝试使用C#MVC框架来加载fullcalendar。我已将这些行添加到“共享”文件夹

中的_Layout.cshtml
@Styles.Render("~/Public/fullcalendar/fullcalendar.css")

@Scripts.Render("~/Public/fullcalendar/lib/jquery.min.js")
@Scripts.Render("~/Public/fullcalendar/lib/moment.min.js")
@Scripts.Render("~/Public/fullcalendar/fullcalendar.js")

我已将此添加到Index.cshtml的head部分,以查看我想要显示日历的视图

<script type="text/javascript">
        $(document).ready(function () {
            $('#calendar').fullCalendar({
            });
        });
</script>

只是为了咯咯笑,我用$('#calendar'... bit替换了警告(“测试”),它弹出来就好了。

在Chrome控制台中,它给了我这个错误

Uncaught TypeError: undefined is not a function Index:57
(anonymous function) Index:57
j                                    jquery.min.js:2
k.fireWith                           jquery.min.js:2
n.extend.ready                       jquery.min.js:2
I                                    jquery.min.js:2

这是在索引

的第57行

error

所以出于某种原因,我认为fullcalendar没有初始化或加载?我不是很确定,因为它是我第一次使用这样的网络语言。有没有人有建议或知道如何解决这个问题?任何帮助将不胜感激。

修改的 我也试过去生成的html中的URL,以确保文件是Web可访问的,并且_Layout.cshtml中的所有.js和.css文件都已加载

2 个答案:

答案 0 :(得分:3)

我对使用@ Script.Render(&#34; ...&#34;)感到困惑,并且使用不正确。我可以通过在_Layout.cshtml中调用RenderSection()之前将@ Script.Render(&#34; ...&#34;)部分放在正文中来实现它。然后在页面的头部我试图使用日历,我也不得不添加这个:

<link rel='stylesheet' href='~/Public/fullcalendar/fullcalendar.css' />
<script src='~/Public/fullcalendar/lib/jquery.min.js'></script>
<script src='~/Public/fullcalendar/lib/moment.min.js'></script>
<script src='~/Public/fullcalendar/fullcalendar.js'></script>

我认为我的部分问题源于之前没有做过网络开发的事情,但我希望这会帮助其他人。

答案 1 :(得分:0)

您可能与页面底部的_Layout.cshtml中的包存在冲突:

@Scripts.Render("~/bundles/jquery")

您可以尝试将fullcalendar脚本添加到此捆绑包或删除捆绑包或执行其他操作