簡體   English   中英

如何將JavaScript添加到ASP.NET MVC視圖?

[英]How do I add JavaScript to an ASP.NET MVC View?

我有一個簡單的視圖,我希望在此視圖中添加一個JQuery DatePicker JavaScript (而不是每個視圖,通過母版頁)。

我不確定這樣做的最佳方法是什么。

其次,我意識到我的JavaScript加載的位置/時間。 我是YSlow的粉絲,它建議我在頁面底部添加任何腳本,我這樣做。

那么,我怎么能兩個都做?

這是觀點:

<%@ Page
    Language="C#" 
    MasterPageFile="~/Views/Shared/Site.Master" 
    Inherits="System.Web.Mvc.ViewPage" %>

<asp:Content ID="Content1" ContentPlaceHolderID="MainContent" runat="server">

    <h2>Index</h2>

    <% using (Html.BeginForm()) {%>

    <p>
        <label for="StartDate">Start Date:</label>
        <!-- JQuery DatePicker to be added, here. -->
    </p>
    <% } %>
</asp:Content>

在ASP.NET MVC3中,您現在可以使用RenderSection來實現此目的,至少對於更簡單的場景。 只需將RenderSection添加到布局頁面的底部,然后從視圖中填寫應用代碼

RenderSections: http//www.dotnetcurry.com/ShowArticle.aspx? ID = 636

您的MasterPage應該有頭部的ContentPlaceHolder。

<head runat="server">
    <title></title>
    <asp:ContentPlaceHolder ID="head" runat="server" />
</head>

然后,您可以在視圖中包含頭元素(JavaScripts,StyleSheets等):

<asp:Content ID="Content1" ContentPlaceHolderID="head" runat="server">
    <script src="/Scripts/jquery/ui/ui.datepicker.js" type="text/javascript">
    </script>
    <link href="/Styles/myStyle.css" rel="stylesheet" type="text/css" />
</asp:Content>

一種方法是將內容占位符放在母版頁的底部,然后需要javascript的特定從屬頁面可以將占位符內容指定為所需的javascript。 其他不需要javascript的頁面不會為占位符指定任何內容。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM