JavaScriptファイルへのリンクを特定のASP.NETMVCページのヘッダーに追加するにはどうすればよいですか?
_Layout.cshtmlとAbout.cshtmlがあり、About.cshtmlのヘッダーにjavascriptファイルを配置する必要があるとします。私はそのページだけを意味します。
http://www.dotnetcurry.com/ShowArticle.aspx?ID=636
どのようにそれを行うことができますか?
JavaScriptファイルへのリンクを特定のASP.NETMVCページのヘッダーに追加するにはどうすればよいですか?
_Layout.cshtmlとAbout.cshtmlがあり、About.cshtmlのヘッダーにjavascriptファイルを配置する必要があるとします。私はそのページだけを意味します。
http://www.dotnetcurry.com/ShowArticle.aspx?ID=636
どのようにそれを行うことができますか?
私の解決策:
_Layout.cshtml
!DOCTYPE html>
<html>
<head>
<title>@ViewBag.Title</title>
<link href="@Url.Content("~/Content/Site.css")" rel="stylesheet" type="text/css" />
<script src="@Url.Content("~/Scripts/jquery-1.4.4.min.js")" type="text/javascript"></script>
@if (IsSectionDefined("AddToHead"))
{
@RenderSection("AddToHead", required: false)
}
</head>
About.cshtml
@{
ViewBag.Title = "Index";
}
<h2>Index</h2>
@section footer {
<b>Footer Here</b>
}
@section AddToHead {
<script src="@Url.Content("~/Scripts/test.js")" type="text/javascript">
</script>
}
なぜそれがヘッダーになければならないのですか?必要なスクリプトをインラインで含めることができます。
<script src="@Url.Content("~/Scripts/jquery-ui.min.js")" type="text/javascript"></script>
以下のコードを試してください
HtmlGenericControl my_js = new HtmlGenericControl("script");
my_js.Attributes["async"] = "async";
my_js.Attributes["type"] = "text/javascript";
my_js.Attributes["src"] = "http://ajax.googleapis.com/ajax/libs/jquery/1.7.2/jquery.min.js";
Page.Header.Controls.Add(my_js);
HtmlGenericControlを使用するには、名前空間:"usingSystem.Web.UI.HtmlControls"を使用する必要があります。