Ich habe MVC3 App, unaufdringliche Validierung funktioniert gut in FireFox, aber nicht im IE arbeiten.
Irgendwelche Ideen warum?
AKTUALISIEREN
Es scheint, dass jQuerys unauffällige Validierungsbibliothek, die mit MVC3 geliefert wird, nicht vollständig kompatibel mit jQuery 1.7.1 ist, das ich benutze (das mit der Bootstrap-Vorlage geliefert wurde). Funktioniert in Firefox, funktioniert nicht mit IE 8 (den ich habe).
Ich habe angefangen, jQuery auf die Version zu aktualisieren, in der es zu arbeiten beginnt (nicht sicher, wenn andere Dinge nicht kaputt gehen!).
Als ich zu 1.8.1 kam, hat es endlich funktioniert.
Ich fuhr fort, jQuery zu aktualisieren, als ich zu 1.9.1 kam - das verdammte Ding hörte auf, wieder zu arbeiten:)
Die neueste jQuery-Version, die für mich mit MVC3 jQuery unaufdringliche Validierung funktionierte, ist 1.8.3.
Sieht aus wie dies ist auch die neueste jQuery-Version, was mit MVC3 jQuery unaufdringlichen Ajax-Bibliothek arbeitet.
P.S. Leute, die MVC3 unauffällige Validierung oder Ajax verwenden, verwenden jQuery nicht höher als v 1.8.3.
Ich hatte kürzlich ähnliche Probleme, nur IE7 und IE8 (mit MVC4).
Damit die Validierung wieder funktioniert, habe ich folgende Versionen installiert:
jQuery: 1.8.3
jQuery Validierung: 1.9.0.1
Microsoft Unobtrusive Validation: 2.0.30116.0 (Stand: 14. Mai 2013)
Ich bemerkte, dass der Übergang zu jQuery Validation v1.10 die Ursache für die Probleme war. Zur Zeit dieses Beitrags JQuery Validation ist v1.11.1 und funktioniert nicht in IE7 / 8. Dies wurde auch mit jQuery 1.8.3 und 1.9.1 versucht, beide haben nicht mit der neuesten Version von jQuery Validation gearbeitet.
Hinweis: Das besondere Problem für mich bestand darin, dass der Fehler für alle Eingaben und Kontrollkästchen ausgelöst wurde, auch wenn sie nicht "Daten erforderlich" waren.
Ich hatte ein sehr ähnliches Problem mit dem, was beschrieben wird. Mit IE9 (Doc Mode: IE9 Standards) erhielt ich Skriptfehler, wo es in jedem anderen Browser funktioniert (und niedrigere IE Doc Standards).
Ich habe das Problem unter Verwendung von jquery.validate.js (1.11 .0)
Damit könnte ich jQuery-1.9.1.js und MVC3.0 jquery.validate.unobtrusive
Zum Zeitpunkt des Schreibens ( September 2014 ) habe ich die folgende Kombination und für mich getestet (mit IE8 und überrascht, sogar mit IE7 !) das funktioniert:
Hinweis, mit IE 11 (Kante) Manchmal bekomme ich (wenn ich den Debugger mit F12 öffne) den folgenden Fehler :
SCRIPT5007: Die Eigenschaft 'call' von undefined oder null konnte nicht abgerufen werden Referenzdatei: jquery.validate.js, Zeile: 1234, Spalte: 5
Aber wenn ich den Debugger schließe und das Formular als normalen Benutzer verwende, wenn es funktioniert .
Getestet auch mit IE10 und IE9 (IE11 emuliert diese). Bisher keine Probleme gefunden .
Wenn Sie die nuget-Pakete nicht aktualisieren können (downgrade), weil Sie einen Abhängigkeitsfehler erhalten (jquery 1.4 oder so), denken Sie daran, das Flag -IgnoreDependencies zu verwenden, zum Beispiel:
%Vor%Enjoy (gut, IE8 zu unterstützen ist nicht wirklich genießend, aber wenn Sie hier sind, bedeutet das, dass Sie mit Kunden arbeiten, die diesen beschissenen Browser nicht loswerden können ...). Prost;)
Tags und Links asp.net-mvc-3 unobtrusive-validation