javascript - run - partial view section scripts




Come posso aggiungere JavaScript a una vista MVC ASP.NET? (2)

Ho una semplice vista e desidero aggiungere un JavaScript JQuery DatePicker a questa vista (e non ad ogni vista, tramite una pagina master).

Non sono sicuro di quale sia il modo migliore per farlo.

Secondo, sono consapevole di dove / quando viene caricato il mio JavaScript. Sono un fan di YSlow e mi raccomando di aggiungere degli script in fondo alla pagina, cosa che faccio.

Quindi, come potrei fare entrambe le cose?

Ecco la vista:

<%@ 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>

In ASP.NET MVC3, ora è possibile utilizzare RenderSection per ottenere questo risultato, almeno per scenari più semplici. Basta aggiungere una RenderSection nella parte inferiore della pagina di layout e dalla tua vista inserire il codice dell'appliazione

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


La tua MasterPage dovrebbe avere un ContentPlaceHolder per la testa.

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

Quindi puoi includere elementi principali (JavaScript, StyleSheets, ecc.) Nelle viste:

<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>




views