HTML 属性:disabled
布尔型disabled
属性,如果存在,则使元素不可变、不可聚焦,甚至不与表单一起提交。用户既不能编辑也不能聚焦该控件,也不能聚焦其表单控件后代。
试用
概述
如果在表单控件上指定了disabled
属性,则该元素及其表单控件后代不参与约束验证。通常情况下,浏览器会将此类控件灰显,并且不会接收任何浏览事件,例如鼠标点击或与焦点相关的事件。
disabled
属性受<button>
、<fieldset>
、<optgroup>
、<option>
、<select>
、<textarea>
和<input>
支持。
此布尔型禁用属性表示用户无法与控件或其后代控件进行交互。如果未指定此属性,则控件将从包含元素(例如 fieldset
)继承其设置;如果不存在具有 disabled
属性设置的包含元素,并且控件本身也不具有该属性,则控件处于启用状态。如果在 <optgroup>
上声明,则选择仍然可交互(除非另行禁用),但选项组中的任何项目均不可选择。
注意: 如果 <fieldset>
被禁用,则后代表单控件将全部被禁用,但 <legend>
中的表单控件除外。
当支持元素应用 disabled
属性时,:disabled
伪类也应用于它。相反,支持 disabled
属性但未设置该属性的元素将匹配 :enabled
伪类。
此布尔型属性可阻止用户与按钮交互。如果未设置此属性,则按钮仍可能从包含元素(例如 <fieldset>
)中禁用;如果不存在具有 disabled
属性设置的包含元素,则按钮处于启用状态。
与其他浏览器不同,Firefox 会在页面加载之间保留 <button>
的动态禁用状态。使用 autocomplete
属性控制此功能。
属性交互
可用性
约束验证
如果元素被 disabled
,则该元素的值无法获得焦点,无法被用户更新,并且不参与约束验证。
示例
当表单控件被禁用时,许多浏览器默认情况下会以浅色、灰色的方式显示它们。以下是一些禁用复选框、单选按钮、<option>
和 <optgroup>
的示例,以及一些通过在祖先
元素上设置禁用属性来禁用的表单控件。 <fieldset>
<option>
被禁用,但 <select>
本身没有。我们可以通过向元素而不是其后代添加属性来禁用整个 <select>
。
<fieldset>
<legend>Checkboxes</legend>
<p>
<label>
<input type="checkbox" name="chbox" value="regular" /> Regular
</label>
</p>
<p>
<label>
<input type="checkbox" name="chbox" value="disabled" disabled /> disabled
</label>
</p>
</fieldset>
<fieldset>
<legend>Radio buttons</legend>
<p>
<label> <input type="radio" name="radio" value="regular" /> Regular </label>
</p>
<p>
<label>
<input type="radio" name="radio" value="disabled" disabled /> disabled
</label>
</p>
</fieldset>
<p>
<label
>Select an option:
<select>
<optgroup label="Group 1">
<option>Option 1.1</option>
</optgroup>
<optgroup label="Group 2">
<option>Option 2.1</option>
<option disabled>Option 2.2</option>
<option>Option 2.3</option>
</optgroup>
<optgroup label="Group 3" disabled>
<option>Disabled 3.1</option>
<option>Disabled 3.2</option>
<option>Disabled 3.3</option>
</optgroup>
</select>
</label>
</p>
<fieldset disabled>
<legend>Disabled fieldset</legend>
<p>
<label>
Name: <input type="radio" name="radio" value="regular" /> Regular
</label>
</p>
<p>
<label>Number: <input type="number" /></label>
</p>
</fieldset>
规范
规范 |
---|
HTML 标准 # attr-fe-disabled |
HTML 标准 # attr-optgroup-disabled |
HTML 标准 # attr-option-disabled |
浏览器兼容性
html.elements.button.disabled
BCD 表格仅在启用 JavaScript 的浏览器中加载。
html.elements.fieldset.disabled
BCD 表格仅在启用 JavaScript 的浏览器中加载。
html.elements.input.disabled
BCD 表格仅在启用 JavaScript 的浏览器中加载。
html.elements.optgroup.disabled
BCD 表格仅在启用 JavaScript 的浏览器中加载。
html.elements.option.disabled
BCD 表格仅在启用 JavaScript 的浏览器中加载。
html.elements.select.disabled
BCD 表格仅在启用 JavaScript 的浏览器中加载。
html.elements.textarea.disabled
BCD 表格仅在启用 JavaScript 的浏览器中加载。