如何禁用所有 div 内容

2022-08-29 23:50:03

我假设如果我禁用了一个div,所有内容也会被禁用。

但是,内容是灰色的,但我仍然可以与它进行交互。

有没有办法做到这一点?(禁用 div 并禁用所有内容)


答案 1

上述许多答案仅适用于表单元素。禁用任何 DIV(包括其内容)的一种简单方法是禁用鼠标交互。例如:

$("#mydiv").addClass("disabledbutton");

断续器

.disabledbutton {
    pointer-events: none;
    opacity: 0.4;
}

补充:

许多人评论如下:“这只会禁止鼠标事件,但控件仍处于启用状态”和“您仍然可以通过键盘导航”。您可以将此代码添加到脚本中,并且无法通过键盘选项卡等其他方式访问输入。您可以更改此代码以满足您的需求。

$([Parent Container]).find('input').each(function () {
     $(this).attr('disabled', 'disabled');
 });

答案 2

使用像JQuery这样的框架来做这样的事情:

function toggleStatus() {
    if ($('#toggleElement').is(':checked')) {
        $('#idOfTheDIV :input').attr('disabled', true);
    } else {
        $('#idOfTheDIV :input').removeAttr('disabled');
    }   
}

禁用并启用 Div 块中的输入元素 使用 jQuery 应该可以帮助您!

从 jQuery 1.6 开始,您应该使用而不是用于禁用。.prop.attr