# [Usage](../../../usage.md) > [Components and standard attributes](../basics.md) > disabled

---
`disabled` | `->setDisabled()`

Set if the component is disabled, based on the component it can disable inputting, selecting or clicking on the component.

| Types     | Default |
|-----------|---------|
| `boolean` | `false` |

Greys out and blocks interaction: Form fields become non-editable (still submitted per HTML rules), Buttons / visuals become non-clickable. Works on single fields and container children. When omitted (`false`) the component is interactive.
Accepts a Closure for record- or field-dependent disabling.

### Example
Blade:
```php
{!! \KFramework\Components\Forms\Input::make()->setName('email')->setDisabled(true) !!}
```
Controller:
```php
Input::make()->setName('email')->setDisabled(true);
Button::make('Save')->setDisabled(fn($component) => $component->getCustomProperty('locked'));
```

### Interaction / tips
- Contrast with `hidden` (../shared_attributes/hidden.md) (removes from view) and `required` (../shared_attributes/required.md) (validation only).
- Combine with `updateOnChange` (../shared_attributes/update_on_change.md) / `onLoadChange` (../shared_attributes/on_load_change.md) for dynamic enable/disable.
- Disabled fields still need `name` (../shared_attributes/name.md) to stay identifiable.

See also: [hidden](hidden.md), [render](render.md), [required](required.md), [updateOnChange](update_on_change.md), [onLoadChange](on_load_change.md), [basics](../basics.md), [Input](../forms/input.md).