Ich verwende die neueste Version von jQuery Validation Unobtrusive in Kombination mit der neuesten Version von jQuery Validate. Die Validierung selbst funktioniert wie ein Zauber. Wenn das Feld jedoch ungültig ist, werden dem Attribut aria-describedby
Werte hinzugefügt.Mehrere Werte für aria-beschrieben von jQuery Validation Unobtrusive
Sagen wir, ich möchte mein Passwort eingeben (zur Überprüfung muss die Länge des Passwortes größer als 6 sein). Die anfängliche HTML sieht wie folgt aus:
<input data-val="true" data-val-minlength="The field Passwort must be a string or array type with a minimum length of '6'."
data-val-minlength-min="6" data-val-required="The Passwort field is required."
id="Password" name="Password" tabindex="2"
type="password">
Ich beginne mit nur 5 Zeichen ein Kennwort eingeben und dann Fokus entfernen input
von irgendwo einen Klick auf den body
. Die Validierung läuft durch und eine Reihe von Attributen und Werten einschließlich aria-describedby
wird hinzugefügt. Jetzt hat das aria-describedby
Attribut nur einen einzelnen Wert Password-error
. Wenn ich dann das Eingabefeld erneut fokussiere und alle Zeichen lösche und sogar die Rücktaste drücke, wird ein neuer Wert für jede Taste hinzugefügt. Daraus ergibt sich wie folgt zusammen:
<input data-val="true"
data-val-minlength="The field Passwort must be a string or array type with a minimum length of '6'."
data-val-minlength-min="6"
data-val-required="The Passwort field is required."
id="Password" name="Password" tabindex="2" type="password" aria-required="true"
aria-invalid="true" class="input-validation-error"
aria-describedby="Password-error Password-error Password-error Password-error Password-error Password-error Password-error Password-error Password-error Password-error Password-error Password-error Password-error Password-error Password-error Password-error Password-error Password-error Password-error Password-error Password-error Password-error Password-error
Password-error">
Dies ist durchaus ein Overhead von Werten für das Attribut considiering, dass die Werte gleich sind. Ist dieses Verhalten normal oder weiß jemand, wie man das repariert?
Haben Sie eine Lösung gefunden? – Alex
Siehe meine Antwort unten. Irgendwie war das Problem verschwunden, nachdem ich die Lösung in VS neu erstellt und die Schattenkopien gelöscht habe, die im Hintergrund erstellt wurden. – LordTribual