У своїй веб-програмі я використовую спеціальну перевірку для полів форми. У одній і тій самій формі у мене є дві кнопки: одна, щоб фактично надіслати форму, а інша - скасувати / скинути форму.
В основному я використовую 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>
Те, що я очікував, відбудеться. Перше поле "ім'я" справді фокус потрапило автоматично.
Хтось ще натрапив на це?