В моем веб-приложении я использую некоторые пользовательские проверки для полей формы. В той же форме у меня есть две кнопки: одна для отправки формы, а другая - для отмены/сброса формы.Обязательный атрибут HTML5
В основном я использую 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>
То, что я ожидал, произойдет. Первое поле «имя» автоматически получило фокус.
Кто-нибудь еще наткнулся на это?
Теперь нет необходимости устанавливать атрибут true в значение true. Например: и то же самое –
Правда, это плохая привычка от моих , когда я был использован для кодирования в XHTML ... Но все ли современные браузеры поддерживают этот тег без = «требуется»? Я считаю, что Safari не ... –
Каково фактическое и ожидаемое поведение? –