cle*_*tus 264

在旧版本中,您可以使用attr.从jQuery 1.6开始,你应该使用prop:

$("#target :input").prop("disabled", true);
Run Code Online (Sandbox Code Playgroud)

禁用'target'中的所有表单元素.见:input:

匹配所有输入,textarea,select和按钮元素.

如果你只想要<input>元素:

$("#target input").prop("disabled", true);
Run Code Online (Sandbox Code Playgroud)

  • 从jQuery 1.6开始,你应该使用`$("#target:input").prop("disabled",true);` (21认同)
  • 有人应该使用更新的方法编辑答案 - 此时这只是不好的信息. (4认同)
  • @OlivierPons` $(this).closest('form').find('input').prop('disabled',true);`.不确定你是否可以更好地巩固它,我仍然相当jQuery noobish. (2认同)

Met*_*lls 39

以上示例在技术上是不正确的.根据最新的jQuery,使用该prop()方法应该用于禁用等事情.查看他们的API页面.

要禁用'target'中的所有表单元素,请使用:input选择器匹配所有input,textarea,select和button元素.

$("#target :input").prop("disabled", true);
Run Code Online (Sandbox Code Playgroud)

如果您只想要元素,请使用它.

$("#target input").prop("disabled", true);
Run Code Online (Sandbox Code Playgroud)


Met*_*lls 14

更简洁的方法是使用他们的选择器引擎.因此,要禁用div或form父级中的所有表单元素.

$myForm.find(':input:not(:disabled)').prop('disabled',true)
Run Code Online (Sandbox Code Playgroud)


Ott*_*lis 9

你可以加

 <fieldset class="fieldset">
Run Code Online (Sandbox Code Playgroud)

然后你可以打电话

 $('.fieldset').prop('disabled', true);
Run Code Online (Sandbox Code Playgroud)


Ang*_*nca 8

要禁用所有表单,就像写一样简单:

jQuery 1.6+

$("#form :input").prop("disabled", true);
Run Code Online (Sandbox Code Playgroud)

jQuery 1.5及以下版本

$("#form :input").attr('disabled','disabled');
Run Code Online (Sandbox Code Playgroud)


Sam*_*imy 6

通过这一行,您可以禁用表单中的任何输入字段

$('form *').prop('disabled', true);
Run Code Online (Sandbox Code Playgroud)