Можно ли использовать обязательное свойство в IE? - PullRequest
6 голосов
/ 30 сентября 2011

У меня есть такой код:

<input required>

В хороших браузерах я могу использовать jquery, как этот, чтобы добавить класс ошибок для ввода:

$('input[required]').addClass('error');

Это не такработать в IE, хотяЯ прибегну к этому иначе, но это не так аккуратно ...

HTML:

<input data-required=true>

Javascript:

if( $('input').data('required') ) $('input').addClass('error');

Есть идеи?

Спасибо,
Будет

РЕДАКТИРОВАТЬ:

Да, я использую HTML5.

IE фактически интерпретирует это:

<input required>

как:

<input required="">

Таким образом, можно проверить это следующим образом:

if( $('input').prop() == undefined )

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

Я в основном спрашиваю, есть ли метод проверки, который является кроссбраузерным и аккуратным.Я немного перфекционист, возможно!;)

Ответы [ 2 ]

4 голосов
/ 30 сентября 2011
Атрибут

с использованием data- является безопасным, и ваша страница будет действительной, если вы их используете. Но вам нужна цитата для вашей ценности. Я использую атрибуты данных все время. Мы поддерживаем IE7.

<input data-required="true">

Или даже вы можете оставить значение в таких случаях:

<input data-required>

Если вы часто используете атрибуты данных, то полезно знать, что вы можете использовать свойство dataset в инструментах разработчика Chrome (и Firebug) для доступа к атрибутам данных вашего элемента через консоль. Пока не безопасно использовать dataset API в вашем коде. это не поддерживается в IE8

в вашей консоли напишите:

$$('input')[0].dataset

и получите значения и свойства атрибута данных!

2 голосов
/ 30 сентября 2011

Попробуйте использовать required="required", это может сделать старые браузеры похожими на него.

ВАЖНОЕ ПРИМЕЧАНИЕ: все еще очень правильно писать <input required>

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...