Задать вопрос
Mike_Ro
@Mike_Ro
Python, JS, WordPress, SEO, Bots, Adversting

Как правильно указать data в $(this)?

Всем привет! Написал скрипт, который проверяет все input поля на пустоту, как правильно дописать скрипт, что-бы он помимо пустоты смотрел и наличие в input data-type="required"?
Проверяет все пустые поля:
$('input').each(function () {
            if($(this).val() == '') {
                $(this).addClass('notFilled');
            };
        });

Мои попытки указать еще и data атрибуты:
$('input').each(function () {
            if($(this['data-type=required']).val() == '') {
                $(this).addClass('notFilled');
            };
        });

Если не сложно, то хотел-бы еще лицезреть аналогичный вариант, но теперь с проверкой пустоты и класса.
Спасибо!
  • Вопрос задан
  • 166 просмотров
Подписаться 1 Оценить Комментировать
Решение пользователя Roman К ответам на вопрос (3)
ronik55
@ronik55
Simply good guy, who can press any key ;)
Дата теги можно использовать напрямую а не через attr

if ($(this).data('type') == 'required' && $(this).val() == '')


По классу проверяем также:
/* данный вариант применим только когда класс у элемента один, в противном случае присвоятся все классы */
if ($(this).attr('class') == 'required' && $(this).val() == '')

/* когда элементу присвоено несколько классов можно проверять с помощью hasClass */
if ($(this).hasClass('you_search_class') && $(this).val() == '')
Ответ написан