jQuery Validate Игнорировать элементы со стилем

Я использую jQuery validate для проверки на стороне клиента, и я хочу игнорировать любой элемент, который имеет style="display: none"

$("#myform").validate({
   ignore: "?"
});

Каким будет мой селектор для этого в приведенном выше случае?

2 ответа

Решение

Примечание. Начиная с версии 1.9.0, ignore: ":hidden" является параметром по умолчанию, поэтому его не нужно устанавливать явно.


использование :hidden:

Элементы могут считаться скрытыми по нескольким причинам:

  • У них есть отображаемое значение ни одного.
  • Они являются элементами формы с type="hidden".
  • Их ширина и высота явно установлены на 0.
  • Элемент-предок скрыт, поэтому элемент не отображается на странице.
$("#myform").validate({
   ignore: ":hidden"
});

Обновление: для полноты из документации плагина:

игнорировать
Элементы, которые нужно игнорировать при проверке, просто отфильтровывая их. Не -метод jQuery используется, поэтому все, что принято not() можно передать как эту опцию. Входные данные типа submit и reset всегда игнорируются, поэтому отключаются элементы.

http://api.jquery.com/hidden-selector/

":hidden"

это то, что вы ищете.

Элементы могут считаться скрытыми по нескольким причинам:

  • У них есть отображаемое значение ни одного.
  • Они являются элементами формы с type="hidden".
  • Их ширина и высота явно установлены на 0.
  • Элемент-предок скрыт, поэтому элемент не отображается на странице.

Я чувствую, что это может быть лучше.

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