mirror of
https://github.com/DSpace/dspace-angular.git
synced 2025-10-07 01:54:15 +00:00
1.9 KiB
1.9 KiB
DSpace ESLint plugins > HTML rules > dspace-angular-html/no-disabled-attribute-on-button
Buttons should use the dsBtnDisabled
directive instead of the HTML disabled
attribute.
This should be done to ensure that users with a screen reader are able to understand that the a button button is present, and that it is disabled.
The native html disabled attribute does not allow users to navigate to the button by keyboard, and thus they have no way of knowing that the button is present.
Examples
Valid code
should use [dsBtnDisabled] in HTML templates
<button [dsBtnDisabled]="true">Submit</button>
disabled attribute is still valid on non-button elements
<input disabled>
[disabled] attribute is still valid on non-button elements
<input [disabled]="true">
angular dynamic attributes that use disabled are still valid
<button [class.disabled]="isDisabled">Submit</button>
Invalid code & automatic fixes
should not use disabled attribute in HTML templates
<button disabled>Submit</button>
Will produce the following error(s):
Buttons should use the `dsBtnDisabled` directive instead of the `disabled` attribute.
Result of yarn lint --fix
:
<button [dsBtnDisabled]="true">Submit</button>
should not use [disabled] attribute in HTML templates
<button [disabled]="true">Submit</button>
Will produce the following error(s):
Buttons should use the `dsBtnDisabled` directive instead of the `disabled` attribute.
Result of yarn lint --fix
:
<button [dsBtnDisabled]="true">Submit</button>