MVC4-Teilansicht Bündelung von javascript-Problem
Ich bin an einem Projekt arbeiten ASP.net 4, MVC4(RC) mit visual studio 11.
Ich bin versucht zu Rendern eine MVC4-Razor-Ansicht, durch das eine Teilansicht. Ich habe einige javascript erforderlich für meine eingeschränkte Sicht.
Auf meine partial Ansicht, wenn ich mein javascript im Skript-Abschnitt wie folgt scheint es nicht zu laden.
@section Scripts {
<script type="text/javascript">
$(function () {
alert("test");
});
</script>
}
Wenn ich entfernen Sie die Skripts Abschnitt schlägt es fehl, da die jquery-Bibliotheken (die sind gebündelt und gerendert auf meiner _Layout.cshtml-Seite) noch nicht geladen, wenn das Dokument bereit code ausgeführt wird.
<script type="text/javascript">
$(function () {
alert("test");
});
</script>
_Layout Seite code zum laden der jquery-Bibliotheken
@Scripts.Render("~/bundles/jquery")
@RenderSection("scripts", required: false)
Kennt jemand eine Lösung dafür, oder bin ich einfach nur gehen über es der falsche Weg ist? Seine wrecking meinem Kopf!!
Du musst angemeldet sein, um einen Kommentar abzugeben.
Don ' T wickeln Sie Ihr Skript in einem
document.ready
im teilweisen:Ah, und nicht gestellt Skripte in der Teiltöne. Javascript-code platziert werden soll in separate javascript-Dateien. Wenn Sie wollen, um einige javascript ausführen, wenn eine teilweise geladen ist, können Sie einfach extrahieren Sie das script in eine wiederverwendbare Funktion/plugin, dass Sie rufen, sobald Ihr teilweise geladen ist.
Ah, and don't put scripts in partials
. Also, wenn Sie partielle spezifische Skripts, die Sie würde einfach erklären, Sie in die Ansicht, die Verwendung dieser Teiltöne.success
Rückruf.Endlich funktioniert. Ich entfernte mein javascript aus meiner Teilansicht und platziert es in der übergeordneten Ansicht (das ist nicht Teil), im Skript-Abschnitt.Diese Skripts Abschnitt wurde automatisch beim erstellen der Ansicht mit Gerüst (Erstellen) und platzierte sich am Ende der Seite. Um dieses zu erhalten, Arbeit, die ich hatte, um es zu bewegen, um oben auf der Seite - vor dem Aufruf von render meine teilweise.
ClientDependency löst genau dieses problem und ermöglicht das hinzufügen von Skript-Referenzen zu einer teilweisen Blick auf die aufgerollt und platziert am Ende der Seite (oder wo auch immer Sie angeben) für Sie. Es befasst sich auch mit der Bündelung, Versionierung und Verkleinerung, Seite um Seite.
Den Aufwand, sicherzustellen, dass das Skript Verweis auf die "Eltern" - Ansicht, sondern die teilweise stört mich nicht wirklich, aber Client-Abhängigkeit hilfreich sein könnten, wenn Sie hatten eine Menge Teiltöne alle erfordern Ihre eigenen script und CSS.