標準の MVC サイトですが、レイアウト ページではなくホーム ビューに JQuery on document ready ハンドラーを追加しようとしたところ、実行されないことがわかりました。
レイアウト ページ:
<!DOCTYPE html>
<html>
<head lang="en">
<meta charset="utf-8" />
<title>@ViewBag.Title</title>
<link href="@Url.Content("~/Content/Reset.css")" rel="stylesheet" type="text/css" />
<link href="@Url.Content("~/Content/Site.css")" rel="stylesheet" type="text/css" />
<script src="@Url.Content("~/Scripts/modernizr-2.5.3.min.js")" type="text/javascript"></script>
<script src="@Url.Content("~/Scripts/jquery-1.7.2.min.js")" type="text/javascript"></script>
<script src="@Url.Content("~/Scripts/jquery-ui-1.8.20.min.js")" type="text/javascript"></script>
<script src="@Url.Content("~/Scripts/jquery.unobtrusive-ajax.min.js")" type="text/javascript"></script>
<script src="@Url.Content("~/Scripts/jquery.validate.min.js")" type="text/javascript"></script>
<script src="@Url.Content("~/Scripts/jquery.validate.unobtrusive.min.js")" type="text/javascript"></script>
@RenderSection("Head");
</head>
<body>
<header id="header">
<h1>Home</h1>
<nav id ="nav">
<a href="@Url.Action("Index", "Home")"><div>Home</div></a>
<a href="@Url.Action("AboutMe", "Home")"><div>About Me</div></a>
<a href="@Url.Action("Index", "Project")"><div>My Projects</div></a>
<a href="@Url.Action("Index", "Contact")"><div>Contact Me</div></a>
<a href="@Url.Action("Index", "Blog")"><div>Blog</div></a>
</nav>
</header>
<section id="content">
@RenderBody()
</section>
</body>
</html>
ホームページ:
@{
ViewBag.Title = "Home";
}
@section Head
{
<link href="@Url.Content("~/Content/HomeIndex.css")" rel="stylesheet" type="text/css" />
<link href="@Url.Content("~/Content/Jquery.Tweet.css")" rel="stylesheet" type="text/css" />
<script type="text/javascript" src="@Url.Content("~/Scripts/jquery.tweet.js")"/>
}
<img id="home-image" alt="Home page image" src="..." width="300" />
<section id="introduction">
<h3>WelcomeLi</h3>
<p>Text goes here.<p>
</section>
<section id="get-in-touch">
<h4>Get In Touch</h4>
<img id="facebook-button" alt="Find me on Facebook." src="@Url.Content("~/Content/Images/FacebookButton.png")" />
<img id="skype-button" alt="Contact me via Skype." src="@Url.Content("~/Content/Images/SkypeButton.png")" />
<img id="linkedin-button" alt="Find me on LinkedIn" src="@Url.Content("~/Content/Images/LinkedInButton.png")" />
</section>
<section id="twitter"></section>
したがって、基本的に私がしたことは、jquery ドキュメント対応ハンドラーをレイアウト ページのヘッドに追加することでした。正常に実行されますが、ホーム ビューのヘッド セクションにスクリプト セクションを追加すると、実行されません。誰かがなぜこれが起こっているのか説明できますか? 私には意味がありません。
また、ソースを表示すると、スクリプトが適切な場所にあり、正しくフォーマットされているため、ページが正常にレンダリングされているように見えますが、これには困惑しています。
ありがとう、アレックス。