Utilizzo di JQuery in una sottocartella quando la pagina principale si trova nella cartella principale
-
06-07-2019 - |
Domanda
Sto cercando di usare la libreria jquery in ASP.NET in una sottocartella chiamata " samples " con una pagina master che si trova nella directory principale. Attualmente i riferimenti agli script jquery si trovano nel tag head della pagina master. Se la pagina che sto creando è anche nella directory principale, tutto funziona bene. Se sposto la pagina tra & Quot; samples & Quot; sottodirectory, il jquery si rompe.
Posso risolvere il problema usando qualcosa come il seguente nel tag head:
<script src="<%=ResolveUrl("~/js/jquery.js")%>" type="text/javascript"></script>
... ma poi perdo la possibilità di usare jquery intellisense, perché non sono più direttamente collegato al file in fase di progettazione.
Quindi il mio quesiton è questo: come posso usare la libreria jquery su una pagina aspx senza perdere la connettività con l'intellisense quando la mia pagina è in una sottocartella e la pagina principale è nella radice?
Soluzione
usa semplicemente questo:
<script src="/js/jquery.js" type="text/javascript"></script>
mettendo / prima di js fare il trucco. Tengo sempre i miei file css e javascript in cartelle separate e utilizzo questo tweak per includerli correttamente.
per intellisense puoi provare questo trucco:
<%if(true){%>
<script src="/js/jquery.js" type="text/javascript"></script>
<%}%>
Non riesco a ricordare la fonte di questo trucco.
Altri suggerimenti
È possibile utilizzare un gestore di script per includere i file JS:
<asp:ScriptManager runat="server">
<Scripts>
<asp:ScriptReference Path="~/js/jquery.js" />
</Scripts>
</asp:ScriptManager>