2012-08-07 56 views
0

有人可能请指出我可能会出错的地方吗?我的问题是,在我的意见中,我有一些脚本,似乎jQuery只是不知何故在那里工作(可能是我的错在某处)。jQuery在ASP.NET MVC中不起作用查看

我引用了我的布局页面中指定的jQuery,它总是被加载。然后,我有我的观点,看起来像这样

@model jakubholovsky.com.Models.BlogPost 
@using jakubholovsky.com.DataModels 
@using jakubholovsky.com.Enum 
@{ 
    ViewBag.Title = "Jakub Holovsky - Blog - Post - " + Model.Post.title; 
} 
<h2> 
    @Model.Post.title</h2> 
<div> 
SOME CODE 
</div> 
<script type="text/javascript"> 
    $(document).ready(function() { 
     alert("hello"); 
     $('#addACommentDiv').click(function() { 
      alert("hello"); 
      if ($('#commentFieldset').is(':hidden')) { 
       $("#commentFieldset").slideDown("slow"); 
       $('#addACommentDivButton').html('Close commenting'); 
      } 
      else { 
       $("#commentFieldset").slideUp("slow"); 
       $('#addACommentDivButton').html('Comment on this article'); 
      } 
     }); 
    }); 
</script> 

我试图引用的jQuery在我看来,但没有运气。我也尝试使用基本的JavaScript(只是警报窗口)来检查它是否有效。我也检查过jQuery是否在浏览器中加载(它是)。

警报(“hello”);线只是为了看看它是否通过就绪功能。

这是我在布局页面中引用它的方式。

<head> 
    <meta charset="utf-8" /> 
    <title>@ViewBag.Title</title> 
    <link href="@Url.Content("/Content/Site.css")" rel="stylesheet" type="text/css" /> 
    <script src="@Url.Content("/Scripts/jquery-1.7.2.js")" type="text/javascript"></script> 
    <script src="@Url.Content("/Scripts/jquery-1.7.2-vsdoc.js")" type="text/javascript"></script> 
    <script src="@Url.Content("/Scripts/modernizr-2.5.3.js")" type="text/javascript"></script> 
    <script src="@Url.Content("/Scripts/google-analytics.js")" type="text/javascript"></script> 
</head> 

谢谢你帮助我。

+0

使其请告诉我的错误你得到? – 2012-08-07 16:09:37

+0

如果您没有收到错误消息,请尝试通过某种互联网浏览器开发工具运行该页面,并查看收到的错误消息 – 2012-08-07 16:10:40

回答

1

我建议使用绑定功能,以便您可以使用通配符来选择脚本。这将有助于脚本的未来版本升级。

bundles.Add(new ScriptBundle("~/bundles/jquery").Include(
        "~/Scripts/jquery-1.*")); 

,然后在你的布局或HTML某处

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

在每个链接的/之前,尝试添加“〜”代字符号。我也遇到了这个问题。另外,尝试将物理js文件(从解决方案资源管理器中)拖到此布局页面上。它会确认你的文件夹结构/路径是否正确。

我不得不做的最后一件事就是使用诸如“../”你使用它多少次取决于它必须上升多少个父文件夹。

希望有所帮助。

+0

您的答复的../部分内容错误。 Url.Content用于使所有路径相对于Web应用程序根目录(由〜表示)。但是,是的,加〜应该这样做。下次你应该打开你的Javascript控制台。这种错误会让你看着控制台。 (Chrome和IE上的F12没有任何插件,安装Firebug for Firefox和F12) – Pluc 2012-08-07 17:34:32

+1

你好,请参考我的脚本: 帮助!我很高兴我在你的帮助下解决了这个问题。我只是简单地拖放文件。这是非常奇怪的,它必须这样做。 – 2012-08-07 20:10:18