Meine Javascript Pfade auf dieser Seite arbeiten: http://localhost:53049/CSS und Javascript relativen Pfad Verwirrung in ASP.NET MVC
Aber nicht auf dieser Seite: http://localhost:53049/Home/Messages
Der Grund dafür ist, dass die relativen Pfade unterschiedlich sind, das erstere verlangt ("js/...") und das letztere verlangt ("../../ js/...").
ich meinen Javascript in meiner Site.Master Datei einschließlich:
<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>
Wie erhalte ich um diesen relativen Pfad Wahnsinn, das heißt, was ist der beste Praxis Weg in ASP.NET MVC CSS setzen/JavaScript-Pfade im Site.Master, damit sie für jede Ansicht funktionieren, unabhängig davon, wie tief die URL dieser Ansicht ist.
NACHTRAG:
Es scheint, dass für den Index-Ansicht wird jeder Pfad arbeiten, seltsam:
<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>
Aber für alle anderen Seiten (Seiten mit einer tieferen URL), keines dieser Arbeit.
Was geht hier vor? Wie können wir den Javascript Pfad einmal in Site.Master einstellen und sie funktionieren für alle Seiten?
ADDENUM II:
Es stellte sich nur aus ein Problem mit der jqGrid Javascript-Datei (nicht die jQuery-Datei), anscheinend innerhalb dieser Datei wird andere Javascript-Dateien verweisen und durcheinander:
<script type="text/javascript" src="<%= Url.Content ("~/js/jquery.jqGrid.js") %>"></script>
wir die Dinge nicht von Ihrer localhost Maschine gebucht sehen. – jacobangel
Tres LOL - hatte nicht einmal bemerkt – annakata
Ich weiß (hoffe) Sie können sie nicht auf meinem lokalen Rechner sehen, ich weiß nur nicht, wie man die http's non-links mit diesem Editor macht. Punkt ist, dass die Pfade nicht funktionieren, wenn es Verzeichnisse in der URL gibt. –