- From: sisbluesteel <sisbluesteel@aol.com>
- Date: Fri, 13 Mar 2015 23:41:26 +0200
- To: public-html@w3.org
- Message-ID: <55035986.4010705@aol.com>
So, As a summary: In it's simplest, form dependencies, or form control state management would be utilised as follows: <input type="radio" for="dependant_text /> <input type="radio" for="dependant_fieldset_a" /> <input type="checkbox" for="dependant_fieldset_b" /> <select> <option>1</option> <option for="dependant_date">2</option> <option>3</option> </select> <input type="text" id="dependant_text" /> <input type="date" id="dependant_date" /> <fieldset id="dependant_fieldset_a"> <label>Text:</label><input type="text" /> <label>Number:</label><input type="number" /> </fieldset> <fieldset id="dependant_fieldset_b"> <label>Options:</label><select> <option>a</option> <option>b</option> </select> </fieldset> Where the @for attribute controls the target element's availability (Triggering @disabled attribute). Hiding disabled control can be done using CSS as usual and doesn't require any added functionality( '.some-element:disabled { display: none }' ). Only new functionality added are: Allowing the @for attribute for input- ( Of type: radio, checkbox) and option -controls and setting the target's ( input, select, fieldset) @disabled attribute on/off when the states change. On 11.03.2015 18:32, Andrea Rendine wrote: > Should the dependency being based on the input state (i.e. > empty/filled in, or checked/unchecked), or on the input validity? Of > course if we focused on the state of radio buttons/checkboxes, state > is what matters. Needless to say, though, <input type="radio">, <input > type="checkbox"> and <input (type=text)> are all instances of the same > element, so a dependency on these controls should also take into > account the control type. > Also, should the dependency control the validity check of the control, > or rather its state (enabled/disabled)? Of course I think the latter > should be taken into account. Disabled controls also defy the validity > check, though. > > A final consideration: disabled controls are enough to "simplify" form > use, as users don't consider them too much. So hiding controls (and > labels as well) is not that important. But if an author wanted to hide > disabled controls along with their label AND other auxiliary elements > (some controls could have disclaimers not included in label elements), > making CSS rules complex and related to the @for attribute is useless. > It would be enough to allow a dependency state also on fieldset > elements. Remember that <fieldset> can be @disabled, too. > > 2015-03-11 15:43 GMT+01:00 Cameron Jones <cmhjones@gmail.com > <mailto:cmhjones@gmail.com>>: > > On Fri, Mar 6, 2015 at 9:35 PM, sisbluesteel <sisbluesteel@aol.com > <mailto:sisbluesteel@aol.com>> wrote: > >> How many use cases are there for dependent inputs? > > > > > > Some fields may not be wanted to be shown or activated if other > fields are > > not set first. Hiding unneeded fields makes the form look less > complex and > > doesn't confuse the users. You see this quite often in login > forms and > > filing in request/ticets. Here's a few examples: > > This is a different use case from having the validity of a field being > dependent on another field. To address that use case - i can't really > see why a text input, for example, would require another input to be > valid to enable or disable its own value entry. Put another way, > inputs are not calculated fields so i don't think there are > dependencies between them. > > The case of having inputs enabled/disabled based on the state of other > fields - radio, checkbox or select specifically, is more state > management than validation. > > > > > The implementation doesn't need to be overly complex. At it's > simplest, it > > could be implemented as such: > > > > <input type="text" type="date-time" /> > > <input type="text" depends="other-element" /> > > > > When the other element is not valid, the dependant element has > "disabled" > > -attribute set. The actual hiding/showing can be done with CSS > selectors > > (":disabled"). > > > > > > The first input would necessitate having the @required attribute set > if it's validity were to be used as a @disabled control. > > The problem then arises that the validity of elements would control > the state of other elements, so it would not be possible for the form > to be valid given that both states are possible for form submission. > > What i think might be possible is to detach the scope from validation > and instead focus on field state management. > > It might be possible to purpose the @for attribute on form controls to > allow the state of one field to impact the state of another in a > predefined manner based on the type of field. > > So for checkboxes, radios and select options the binary nature of > their selection could be used to define the state of associated inputs > or fieldsets. For labels, it might be possible to hook into the CSS > :disabled selector based on association via the @for attribute. > > Cameron > >
Received on Friday, 13 March 2015 21:42:06 UTC