In meiner Webanwendung verwende ich eine benutzerdefinierte Validierung für meine Formularfelder. Innerhalb desselben Formulars habe ich zwei Schaltflächen: eine zum tatsächlichen Senden des Formulars und die andere zum Abbrechen / Zurücksetzen des Formulars.
Meistens verwende ich Safari als Standardbrowser. Jetzt ist Safari 5 aus und plötzlich funktionierte meine Abbrechen / Zurücksetzen-Taste nicht mehr. Jedes Mal, wenn ich die Reset-Taste drückte, wurde das erste Feld in meinem Formular scharfgestellt. Dies ist jedoch das gleiche Verhalten wie bei meiner benutzerdefinierten Formularüberprüfung. Wenn Sie es mit einem anderen Browser versuchen, hat alles gut funktioniert. Ich musste ein Safari 5-Problem sein.
Ich habe meinen Javascript-Code ein wenig geändert und festgestellt, dass die folgende Zeile das Problem verursacht:
document.getElementById("somefield").required = true;
Um sicherzugehen, dass dies wirklich das Problem ist, habe ich ein Testszenario erstellt:
<!DOCTYPE html>
<html>
<head>
<title>Test</title>
</head>
<body>
<form id="someform">
<label>Name:</label> <input type="text" id="name" required="true" /><br/>
<label>Car:</label> <input type="text" id="car" required="true" /><br/>
<br/>
<input type="submit" id="btnsubmit" value="Submit!" />
</form>
</body>
</html>
Was ich erwartet hatte, geschah. Das erste Feld "Name" erhielt automatisch den Fokus.
Ist sonst noch jemand darauf gestoßen?