Выберите все входы, метки, выбирает и т. Д. В этом - каждый цикл - PullRequest
8 голосов
/ 14 ноября 2011

Я сейчас работаю над какой-то сложной формой.

Просто интересно, есть ли лучший способ сделать это:

$('.selector').each( function(){

    $("input", this).prop('disabled', true);
    $("select", this).prop('disabled', true);
    $("label", this).prop('disabled', true);
    $("textarea", this).prop('disabled', true);

});

Я хочу выбрать все входы в пределах this (в настоящее время проходит через .selector).Я делаю это правильно?

1 Ответ

16 голосов
/ 14 ноября 2011

Это хорошо, но для упрощения вы можете использовать запятую, как если бы вы группировали любые другие селекторы:

$('.selector').each(function() {
    $('input, select, label, textarea', this).prop('disabled', true);
});

Если единственное, что вы делаете, это устанавливаете это свойство для этих элементов, то вам не нужен цикл .each(). Вы можете безопасно отбросить это и уменьшить его до этой строки:

$('input, select, label, textarea', '.selector').prop('disabled', true);
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...