В моем веб-приложении я использую некоторую настраиваемую проверку для полей формы. В той же форме у меня есть две кнопки: одна для фактической отправки формы, а другая для отмены / сброса формы.
В основном я использую Safari как браузер по умолчанию. Теперь Safari 5 отсутствует, и внезапно моя кнопка отмены / сброса перестала работать. Каждый раз, когда я нажимал кнопку сброса, первое поле в моей форме получало фокус. Однако это то же поведение, что и моя проверка пользовательской формы. При попытке с другим браузером все работало нормально. У меня должна быть проблема с Safari 5.
Я немного изменил свой код Javascript и обнаружил, что следующая строка вызывает проблему:
document.getElementById("somefield").required = true;
Чтобы убедиться, что это действительно проблема, я создал тестовый сценарий:
<!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>
То, что я ожидал, произошло. Первое поле «имя» автоматически получило фокус.
Кто-нибудь еще сталкивался с этим?