4

我正在使用以下 jquery 禁用 ID 复选框

jQuery

$('.ColVis_collection button').first().find('input').attr("disabled", true);

html

此代码位于另一个按钮内,单击该按钮时会像下拉菜单一样被激活。

<div class="ColVis_collection TableTools_collection" style="display: block; position: absolute; opacity: 1; top: 102px; left: 274px; width: 449px;">
    <button class="ColVis_Button TableTools_Button" style="width: 449px;">
        <span>
            <span class="ColVis_radio">
                <input type="checkbox" checked="checked">
            </span>
            <span class="ColVis_title">
                <span>
                    id
                </span>
            </span>
        </span>
    </button>
    <button class="ColVis_Button TableTools_Button" style="width: 449px;">
        <span>
            <span class="ColVis_radio">
                <input type="checkbox" checked="checked">
            </span>
            <span class="ColVis_title">
                <span>
                    name
                </span>
            </span>
        </span>
    </button>
    .
    .
    .
</div>

使用 jquery 禁用具有跨度 id 的第一个按钮并模糊显示它已禁用,但可以单击它,即选中/取消选中。我错过了什么吗?

编辑:

我正在使用 jQuery 数据表 colvis 功能,它可以让您隐藏/取消隐藏表格列

正如您在此图像中看到的,该复选框似乎已禁用,但可以选中/取消选中

图片

4

4 回答 4

11

使用.prop()而不是.attr()来设置 disabled 属性

$('.ColVis_collection button').first().find('input[type="checkbox"]').prop("disabled", true);

演示:小提琴

属性与属性

于 2013-10-03T15:17:46.807 回答
4

尝试这样的事情:

 $("input").prop('disabled', true);
于 2013-10-03T15:21:22.467 回答
0

没搞明白怎么回事。可能我以后再看。最终隐藏了第一个按钮,即

$('.ColVis_collection button').first().attr("hidden", true);
于 2013-10-03T16:00:42.700 回答
0

尝试添加只读属性:

$('.ColVis_collection button').first().find('input').attr("disabled", true).attr("readonly", true);

那可能会解决你。. .

于 2013-10-03T15:19:36.520 回答