Выбор элементов, которые не содержат указанный класс, с помощью jQuery? - PullRequest
1 голос
/ 14 ноября 2010
$("input").each(function() {
    if ($(this).hasClass('valid')) {
        // Do something
    }
});

Код выше определяет, имеет ли input указанный класс. Однако как я могу изменить оператор if, чтобы он что-то делал, когда input не имеет указанного класса?

Ответы [ 3 ]

3 голосов
/ 14 ноября 2010

Вы можете сделать это внутри с отрицанием !, например:

$("input").each(function() {
    if (!$(this).hasClass('valid')) {
        // Do something
    }
});

Или просто используйте :not() при выборе этих элементов, например:

$("input:not(.valid)").each(function() {
    // Do something
});

Это означает, что ваш исходный код также может быть тоньше (поскольку у него есть класс), например:

$("input.valid").each(function() {
    // Do something
});
2 голосов
/ 14 ноября 2010

Вы также можете использовать : не селектор

$("input:not(.valid)").each(function() {
   //Do Something
});
1 голос
/ 14 ноября 2010

Используйте отрицательный оператор !:

$("input").each(function() {
    if (!($(this).hasClass('valid'))) { // pass this statement if the valid class is not present
        // Do something
    }
});
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...