<form id="target">
....
</form>
Как отключить все <input> внутри формы с помощью jQuery?
Ответ 1
В старых версиях вы можете использовать attr
. Начиная с jQuery 1.6 вы должны использовать prop
:
$("#target :input").prop("disabled", true);
Чтобы отключить все элементы формы внутри 'target'. См. :input
:
Соответствует всем элементам ввода, textarea, select и button.
Если вам нужны только элементы <input>
:
$("#target input").prop("disabled", true);
Ответ 2
Вышеприведенный пример технически неверен. В последнем jQuery использовать метод prop()
следует использовать для таких вещей, как отключено. Посмотрите их страницу API.
Чтобы отключить все элементы формы внутри 'target', используйте селектор: input, который соответствует всем элементам ввода, textarea, select и button.
$("#target :input").prop("disabled", true);
Если вам нужны только элементы, используйте это.
$("#target input").prop("disabled", true);
Ответ 3
Также более кратким способом является использование механизма их выбора. Таким образом, чтобы отключить все элементы формы в div или форме родителя.
$myForm.find(':input:not(:disabled)').prop('disabled',true)
Ответ 4
вы можете добавить
<fieldset class="fieldset">
а затем вы можете позвонить
$('.fieldset').prop('disabled', true);
Ответ 5
Чтобы отключить всю форму, так же просто, как и запись:
jQuery 1.6 +
$("#form :input").prop("disabled", true);
jQuery 1.5 и ниже
$("#form :input").attr('disabled','disabled');
Ответ 6
Окончательный ответ (охватывающий изменения в jQuery api в версии 1.6) был предоставлен Gnarf