Comments (5)
A few things I notice (not particularly focusing on testing this and haven't really studied the code to understand how the various UI versions are related; these are just the things that annoy me when using a typical form) from the demo site:
- clicking on select label should focus select dropdown
- clicking on input label should focus on input
- clicking on checkbox group should focus first checkbox in group (or perhaps cycle: check/uncheck/reset to original state for whole group?)
- clicking on individual checkbox label should check/uncheck box
- clicking on radio group label should focus current active radio option
- clicking on text area label should focus text area
- clicking on array model group input label should focus first/last/first empty (not sure which)? input
- clicking on add item in group input should focus newly added input
- in an group input input, pressing tab to new item button/link then pressing space should focus newly added input
demo should show validation states visually somehow also
On the bright side, tab works pretty good to move around.
from ng-dynamic-forms.
@bbarry Thanks for your contribution.
clicking on select label should focus select dropdown
clicking on input label should focus on input
clicking on checkbox group should focus first checkbox in group (or perhaps cycle: check/uncheck/reset to original state for whole group?)
clicking on individual checkbox label should check/uncheck box
clicking on radio group label should focus current active radio option
clicking on text area label should focus text area
clicking on array model group input label should focus first/last/first empty (not sure which)? input
clicking on add item in group input should focus newly added input
The flaw of not selecting a form control when clicking on it's label arises from the fact that no id
attributes are bound to the html elements at the moment. This is necessary in order to not create semantically wrong markup when using form arrays. Otherwise there potentially would exist multiple form controls with the same id
value. I haven't got a better solution to this so far.
demo should show validation states visually somehow also
The importance of showing validation messages and how this should be done is explained in detail in README.md
. However it is not a building block of the actual library. But you're right. I should take the time to improve the example nevertheless.
from ng-dynamic-forms.
Reviewing the markup for the individual checkboxes, I believe removing the for
attribute would be sufficient (a label surrounding a single input is historically adequate for semantically associating them).
w3.org agrees: https://www.w3.org/WAI/tutorials/forms/labels/#associating-labels-implicitly
from ng-dynamic-forms.
@bbarry Alright, thanks! Will be corrected in next version!
from ng-dynamic-forms.
@bbarry There'll be a solution for focusing the controls when clicking the labels, as well!
from ng-dynamic-forms.
Related Issues (20)
- Angular 14 support HOT 3
- File Upload Doesn't Work In Angular Material
- Prime NG and NG Bootstrap Error Message templates are different
- Remove NgbButtonsModule HOT 1
- Angular 15 support HOT 5
- Dynamic forms version 16.0.0 renders Input incorrectly HOT 6
- Multiple levels of nested array Forms
- ControlTooltip and labelToiltip are useless
- Unable to make http call in customValidator HOT 1
- Demo and documentation sites aren't working HOT 2
- Update to support Angular 16? HOT 3
- Typed form groups
- No exported member 'DynamicFormsMaterialUIModule'. HOT 5
- Update documentation to reflect standalone component usage from v18.0.0 HOT 1
- Adding ngx-mask to ng-dynamic-forms/core HOT 1
- Grouped dropdown support (Prime NG)
- Bug when disabling dropdown item
- DynamicFormControlCondition - improvement on DynamicFormRelationService matchesCondition
- Update ng-bootstrap and bootstrap version
- upgrade to version 17 issue
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from ng-dynamic-forms.