Jquery启用和禁用dom元素而不删除

时间:2010-09-14 14:58:31

标签: jquery dom

我有一种形式,在其生命中的某个时刻有三种选择。根据检查的项目,将删除更多表单元素。目前这些只是隐藏,并会在点击时显示/隐藏。但是,当验证这些仍然在DOM中时。我不想删除它们并且每次都添加它们。有没有更简单的方法来启用/禁用一大块表单选项?

2 个答案:

答案 0 :(得分:2)

您可以将不同的表单元素放在带有id的div中。然后做

$('#IdOfDivHoldingSetOfElements').find('input').attr('disabled', 'disabled');

$('#IdOfDivHoldingSetOfElements').find('input').removeAttr('disabled');

如果你有下拉选项,你当然也需要禁用选择。

答案 1 :(得分:1)

我在表单中使用它来禁用输入。然而,它们总是会在DOM中,并且取决于您如何验证表单,这可能不是答案。

$('#elementwrapper input').each(function() {
    $(this).attr('disabled', 'disabled');
});
$('#elementwrapper select').each(function() {
    $(this).attr('disabled', 'disabled');
});