Objekt unterstützt keine Eigenschaft oder Methode 'Dialog'

8

Unter Link habe ich einen Benutzeroberflächen-Dialog von MVC erstellt.
Hier ist mein Code:
In Layout.cshtml

%Vor%

Index.cshtml

%Vor%

Ich habe beides in IE und Firefox überprüft. Firefox löst "Typeerror $ (...) aus. Dialog ist keine Funktion" und IE löst Objekt unterstützt keine Eigenschaft oder Methode 'Dialog' .
Irgendwelche Vorschläge. Was ist der Fehler in meinem Code? Warum ein Dialogfehler auftritt?

    
kk1076 28.03.2013, 10:44
quelle

5 Antworten

14

3 Dinge in den Sinn kommen, die es wert wären, zu überprüfen:

  1. Schreiben Sie niemals URLs in einer ASP.NET MVC-Anwendung fest. Verwenden Sie immer Helfer (oder Pakete, die empfohlen werden):

    %Vor%
  2. Stellen Sie sicher, dass Sie am Ende Ihrer _Layout.cshtml keinen @Scripts.Render("~/bundles/jquery") -Aufruf haben, da dies jQuery zweimal enthalten würde.

  3. Wenn Sie am Ende Ihrer _Layout.cshtml einen eigenen Bereich für benutzerdefinierte Skripte wie @RenderSection("scripts", required: false) haben, stellen Sie sicher, dass Sie Ihr eigenes Skript in diesem Bereich platziert haben (beachten Sie, dass sich diese RenderSection am Ende des DOM befindet) Sie müssen Ihr Skript nicht in ein document.ready-Ereignis einfügen, da das DOM bei seiner Ausführung bereits geladen ist):

    %Vor%
Darin Dimitrov 28.03.2013, 11:01
quelle
8

In meinem Fall war dieser Fehler, weil ich vergessen hatte, den jquery-ui-Dateiverweis hinzuzufügen:

%Vor%     
40-Love 05.11.2014 16:49
quelle
2

Dies tritt häufig auf, wenn Sie vergessen, jquery-ui.js hinzuzufügen. Die Reihenfolge des Einschließens von jquery-ui-{version}.js ist ebenfalls wichtig!

Sie sollten jquery-{version}.js und dann jquery-ui-{version}.js einschließen. Fügen Sie dann kurz vor </body> tag Ihre benutzerdefinierte JavaScript-Datei ein.

Es wird Javascript-Laufzeitfehler beheben: [ Objekt unterstützt keine Eigenschaft oder Methode 'Dialog' ], [ '$' ist undefiniert ]

    
DevelopZen 08.09.2015 20:36
quelle
1

Ihr Code scheint mir OK. Sie können überprüfen, ob die benutzerdefinierte jQuery-Benutzerschnittstelle die Dialogfunktion enthält (oder versuchen Sie, die vollständige jQuery-Benutzeroberfläche herunterzuladen zu Testzwecken) und überprüfen Sie, ob der URI des JS-Skripts korrekt ist.

    
blint 28.03.2013 10:57
quelle
0

Fügen Sie diese drei Codezeilen ein:

%Vor%     
Willow 04.05.2016 10:43
quelle