Domanda

non ho necessariamente bisogno di eseguirlo sul server, tuttavia, vorrei utilizzare la sintassi ~/js/somefile.js.

In precedenza, avevo appena impostato il tutto con percorsi assoluti e impostare il mio progetto per essere al livello principale. SO, avevo appena dichiarare tutti i miei fogli di stile, immagini di sfondo e file JavaScript qualcosa come /css/somefile.css

Tuttavia, per questo progetto, non viene eseguito come root.

Non riesco a mettere runat="server" su un tag script.

posso metterlo su un tag link, però.

Questo deve essere un problema comune con poche risposte semplici.

È stato utile?

Soluzione

è quello che ho sempre fatto utilizzare un tag script normale e mettere il src nei tag <% %>, come illustrato qui :

<script language="javascript" src='<%=ResolveUrl("~/App_Themes/MainTheme/jquery.js")%>' type='text/javascript'></script>

Altri suggerimenti

È possibile utilizzare la ScriptManager per questo:

<asp:ScriptManager ID="ScriptManager1" runat="server">
        <Scripts>
            <asp:ScriptReference Path="~/js/somefile.js" />
        </Scripts>
</asp:ScriptManager>

È possibile utilizzare le funzioni all'interno della stringa di percorso, però, per es.

<script type="text/javascript"
        src="<%=Url.Content("~/Scripts/jquery-1.4.2.min.js") %>"></script>

Tuttavia questa è la sintassi ASP.NET MVC per percorsi locali -. Non riesco a ricordare la versione forme fuori dalla parte superiore della mia testa

È possibile ottenere pienamente ciò che si vuole da tag script che sposta con il asp: ContentPlaceHolder e la si può accedere da codice dietro, ad esempio set sarà esso essere eseguito o non impostando visibile di proprietà di true o false . Ecco l'esempio:

    <asp:ContentPlaceHolder runat="server" ID="PrintPreviewBlock" Visible="false">
    <script id="PrintPageCall" type="text/javascript" >
        $(function() {
            window.print();
        });
    </script>
</asp:ContentPlaceHolder>

e dal codice dietro:

PrintPreviewBlock.Visible = true;

dailycoding.com :

<script language="javascript" src="<%=ResolveUrl("~/[PATH]")%>" type="text/javascript"></script> 
Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top