如何使用jQuery禁用标签?

时间:2013-07-09 15:42:51

标签: javascript jquery html

如何使用jQuery禁用标签?我试过了:

$('#some-id').prop('disabled', true);

但它并没有变灰。

我的HTML是:<label for="some-id">Label Here</label><input id="some-id"/>

4 个答案:

答案 0 :(得分:18)

labels没有固有内置的禁用属性。您需要添加一个类来自行禁用它们。

类似的东西:

.disabled {
   color: darkgrey;
   background-color: grey;
}

并将该类添加到元素中:

$('#some-id').addClass('disabled');

答案 1 :(得分:5)

要禁用标签,请禁用与其关联的表单控件。

但是,这不会改变标签的外观,因为你必须改变适用于它的CSS。最好通过从元素中添加(或删除)一个类(并且具有与该类匹配的预先存在的CSS规则集)来完成。

答案 2 :(得分:1)

你可以禁用这样的输入:

$("#test").attr("disabled", "disabled");

应该注意,您无法禁用标签,因为它不接受任何输入开头。如果您希望外观禁用,您可以考虑将文本颜色更改为灰色。

$("#test").css("color", "#666");

答案 3 :(得分:0)

禁用输入时,应该在标签上添加禁用的类。如果你想将所有代码保存在同一个地方,你可以这样做:

$('#some-id, [for="some-id"]').prop('disabled', true).addClass('disabled');

工作JSFiddle example