Mis caminos javascript trabajan en esta página: http://localhost:53049/CSS y Javascript ruta relativa confusión en ASP.NET MVC
Pero no en esta página: http://localhost:53049/Home/Messages
La razón es que las rutas relativas son diferentes, el primero requiere ("js/...") y el segundo requiere ("../../ js/...").
estoy incluyendo mi Javascript en mi archivo Site.Master:
<script type="text/javascript" src="js/jquery.jqGrid.js"></script>
<script type="text/javascript" src="~/js/jquery.jqGrid.js"></script>
<script type="text/javascript" src="<%= this.ResolveClientUrl("~/Scripts/jquery-1.2.6.js") %>"></script>
¿Cómo consigo alrededor de esta locura ruta relativa, es decir, cuál es la mejor manera práctica en ASP.NET MVC para establecer CSS/Las rutas de JavaScript en Site.Master para que funcionen para cada vista, sin importar cuán profunda sea la URL de esa vista.
Adición:
Parece que para el Índice de vista, cualquier camino va a funcionar, extrañamente:
<script type="text/javascript" src="/Scripts/jquery-1.2.6.js"></script>
<script type="text/javascript" src="../../Scripts/jquery-1.2.6.js"></script>
<script type="text/javascript" src="../../../Scripts/jquery-1.2.6.js"></script>
sino para cualquier otras páginas (páginas con una URL más profundo), ninguno de estos trabajo.
¿Qué está pasando aquí? ¿Cómo podemos establecer la ruta de JavaScript una vez en Site.Master y funcionan para todas las páginas?
Addenum II:
Resultó ser sólo un problema con el archivo javascript jqGrid (no el archivo de jQuery), al parecer dentro de ese archivo que hace referencia a otros archivos javascript y se confunde:
<script type="text/javascript" src="<%= Url.Content ("~/js/jquery.jqGrid.js") %>"></script>
que no podemos ver las cosas publicadas desde su máquina localhost. – jacobangel
tres LOL - ni siquiera había notado – annakata
Sé (espero) que no puede verlos en mi máquina local, simplemente no sé cómo hacer que los http no se vinculen con este editor. El punto es que las rutas no funcionan si hay directorios en la URL. –