<form id="target">
....
</form>
<form id="target">
....
</form>
Відповіді:
У старих версіях ви могли використовувати attr
. Станом на jQuery 1.6 вам слід використовувати prop
:
$("#target :input").prop("disabled", true);
Відключення всіх елементів форми всередині "target". Дивіться :input
:
Відповідає всім елементам введення, текстовій області, вибору та кнопок.
Якщо ви хочете лише <input>
елементи:
$("#target input").prop("disabled", true);
$(this).closest('form').find('input').prop('disabled', true);
. Не впевнений, чи зможете ви консолідувати це краще, я все ще досить noobish в jQuery.
Наведений вище приклад технічно неправильний. За останній jQuery, prop()
метод методу слід використовувати для таких речей, як інваліди. Дивіться їх сторінку API.
Щоб відключити всі елементи форми всередині "target", використовуйте: селектор введення, який відповідає всім елементам введення, textarea, select та button.
$("#target :input").prop("disabled", true);
Якщо ви хочете лише елементи, використовуйте це.
$("#target input").prop("disabled", true);
Також більш стислим способом є використання двигуна їх селекторів. Отже, щоб відключити всі елементи форми в діві або батьківському форматі.
$myForm.find(':input:not(:disabled)').prop('disabled',true)
ви можете додати
<fieldset class="fieldset">
і тоді ви можете зателефонувати
$('.fieldset').prop('disabled', true);
Щоб вимкнути всі форми так просто, як написати:
jQuery 1.6+
$("#form :input").prop("disabled", true);
jQuery 1.5 і нижче
$("#form :input").attr('disabled','disabled');
За допомогою цього одного рядка ви можете відключити будь-яке поле введення у формі
$('form *').prop('disabled', true);
Остаточну відповідь (охоплює зміни до jQuery api у версії 1.6) дав Gnarf
$("#target :input").prop("disabled", true);