Условные правила проверки формы HTML5

Мне интересно, можно ли установить элемент "требуется" на основе какого-либо другого состояния элемента. Например, скажем, у меня есть элемент ввода, который я хочу, чтобы он был "обязательным", если и только если пользователь установил определенный флажок. Во-первых, возможно ли это сделать без использования JavaScript? Во-вторых, если мы используем JavaScript, конечно, можно установить правило / проверку, если пользователь установит этот флажок, но как насчет согласованности в отношении ошибок проверки браузера по умолчанию? Было бы "правильно" добавить атрибут "required" к элементу после того, как установлен флажок? Я не вижу альтернативы здесь. Что вы думаете об этом?

2 ответа

Я не думаю, что вы можете сделать это без JavaScript.

С javascript вы могли бы сделать это достаточно легко.

Я бы добавил required атрибут только после нажатия флажка.

На самом деле, я бы сделал это toggled кусок, так что пользователь может снять и отменить запрос ввода.

Однако я бы не стал полагаться на реализацию браузером required приписывать. Вместо этого я бы создал собственное обязательное уведомление с использованием некоторого CSS (выделение, анимация, отображение некоторых слов).

Вы можете использовать полифилы для эмуляции собственной проверки, когда она недоступна:
https://github.com/Modernizr/Modernizr/wiki/HTML5-Cross-Browser-Polyfills

Другие вопросы по тегам