2014-04-01 37 views
12

有一种方法可以禁用并灰掉复选框标签,并且一旦使用Bootstrap和Jquery禁用复选框?禁用并灰掉Bootstrap中的复选框标签

<div class="checkbox">   
    <input id="accept" name="accept" type="checkbox" value="True"> 
    <label for="accept" class="control-label">Incremental</label> 
</div> 

我现在用的波纹管代码禁用复选框:

$("#accept").prop("disabled", true); 

回答

14

Fiddle Demo

你可以用CSS 只有

input[type=checkbox][disabled] + label { 
    color: #ccc; 
} 

http://css-tricks.com/almanac/selectors/c/checked/

+4

对于像我这样的人,我不知道“+”是什么,想知道为什么它不起作用。标签元素需要直接在输入元素之后(不在之前)。 – CapK

+0

如果标签在复选框之前,css如何受到影响? – ChadD

+0

@ChadD http://stackoverflow.com/questions/1817792 –

1

引导剂量不能提供这种类型的设备,你可以从你的jQuery的自定义代码管理

if($("#accept").has("[disabled]")){ 
    $("#accept").parent().find("label").css("color", "#dadada"); 
} 
-2

尝试使用:

$("#accept").addClass("disabled"); 
+0

这并不会在Bootstrap 3中完全改变标签。 –

-2
$('label.control-label').addClass('disabled'); 

禁用作为一个按钮

$('label.control-label').addClass('btn-disabled'); 
+0

这两个建议都不会对Bootstrap 3中的标签做任何修改。 –

1

似乎在div“class”和输入中设置禁用的字将执行此操作。

<div class="checkbox disabled"> 
    <label><input type="checkbox" value="" disabled>check Me</label> 
</div>