Ich erstelle eine Anwendung in asp.net mvc. Ich weiß, dass ich verwenden kann
@Url.Content("~/Scripts/jquery-1.5.1.min.js")
um meinen Weg richtig zu machen, während ich Javascript zu meiner Rasiermesserdatei hinzufüge. Aber ich habe Javascript-Verweis in einer anderen Javascipt-Datei wie unten
$.include("Scripts/jquery.cycle.all.min.js")
$.include("Scripts/jquery.cookie.js")
Jetzt, wenn ich auf meine Standard-URL zugreife, funktioniert meine JQuery einwandfrei. Wenn ich jedoch eine Controller.MEthod-URL verwende, erhalte ich JQuery-Fehler.
Ich bin mir ziemlich sicher, dass es ein Pfadproblem gibt. Meine Anwendung erkennt den JS, der in einem Pfad einer anderen JS-Datei enthalten ist, nicht richtig, wenn ich eine Controller- / Methoden-URL verwende.
freundlich helfen..
Antworten:
1 für die Antwort № 1Es könnte daran liegen
$.include("Scripts/jquery.cookie.js")
ist ein relativer Pfad (relativ zu dem Controller, in dem Sie sich gerade befinden)
@Url.Content("~/Scripts/jquery-1.5.1.min.js")
ist ein absoluter Pfad.
Versuchen Sie und schauen Sie in Firebug in der Registerkarte "Net", um zu sehen, wo genau woher Ihre Anwendung versucht, die fehlenden Skripte zu finden
BEARBEITEN: Es würde mich nicht wundern, wenn Ihre Anwendung in einem / home / whatever (controller / action) suchen würde jquery.cookie.js im
/home/whatever/scripts/jquery.cookie.js
EDIT # 2 Versuchen Sie, einen absoluten Pfad in Ihrer js-Datei anzugeben. Etwas wie das
$.include("../scripts/jquery.cookie.js")
Benutzer "../", um zum Stammverzeichnis Ihrer Anwendung zu navigieren. Sagen wir das jquery.cookie.js befindet sich in cnd / scripts / du solltest etwas tun
$.include("../../scripts/jquery.cookie.js")