- From: sisbluesteel <sisbluesteel@aol.com>
- Date: Wed, 04 Mar 2015 21:53:21 +0200
- To: Cameron Jones <cmhjones@gmail.com>
- CC: "public-html@w3.org LIST" <public-html@w3.org>
Indeed,
But I think this feature should be in the HTML specification. Here's a
few proposals how this could be implemented:
1a) Attributes (data-* -like)
Don't know if this is a good idea, as the attribute name is not
fixed. I'm not sure if the XML representation can be validated so that
the dependencies actually point to existing elements.
Here the dependencies are expressed as either one of these attributes:
"dependency": The value must be the name (attribute) of the
dependency. This means that this element is valid/active only if the
dependency is valid
"dependency-*": The "dependency-" -prefix must be followed by the
name (attribute) of the dependency. The value must be the dependency's
required element value (e.g. If the dependency is a select-element).
<select name="example-select-dependency">
<option value="1">1</option>
<option value="2">2</option>
<option value="3">3</option>
</select>
<input type="checkbox" name="example-checkbox-dependency" />
<input
type="text"
name="example-checkbox-dependant-text"
depends="example-checkbox-dependency"
/>
<input
type="text"
name="example-select-dependant-text"
depends-example-select-dependency="3"
/>
1b) Attributes with custom value syntax
This alternative specifies an attribute called "dependency" which
value requires special parsing:
The value must start with the name (attribute) of the dependency,
optionally followed by a colon (":") which must be followed with the
required value of the dependency element.
<select name="example-select-dependency">
<option value="1">1</option>
<option value="2">2</option>
<option value="3">3</option>
</select>
<input type="checkbox" name="example-checkbox-dependency" />
<input
type="text"
name="example-checkbox-dependant-text"
depends="example-checkbox-dependency"
/>
<input
type="text"
name="example-select-dependant-text"
depends="example-select-dependency:3"
/>
2) Dependencies as elements
This implementation apes the datalist-element's syntax. This might not
be desirable because dependencies probably shouldn't be rendered by a
user agent (At least not visual ones), as opposed to datalist options.
Form elements can have a "dependencies" -attribute which must contain an
id referencing a dependencies -element. "dependencies"-element must have
"dependency"-elements as children. Each "dependency" -element must have
at least a "name" -attribute which denotes the name of the dependency
element. Optional attribute "value" must contain the required element
value of the dependency.
<select name="example-select-dependency">
<option value="1">1</option>
<option value="2">2</option>
<option value="3">3</option>
</select>
<input type="checkbox" name="example-checkbox-dependency" />
<input type="text"
name="example-checkbox-dependant-text"
dependencies="dependencies-example-checkbox-dependant-text"
/>
<input
type="text"
name="example-select-dependant-text"
dependencies="dependencies-select-radio-dependant-text"
/>
<dependencies id="dependencies-example-checkbox-dependant-text">
<dependency name="example-checkbox-dependency" />
</dependencies>
<dependencies id="dependencies-example-select-dependant-text">
<dependency name="example-select-dependency" value="b" />
</dependencies>
On 04.03.2015 16:47, Cameron Jones wrote:
> On Thu, Feb 26, 2015 at 12:17 PM, Sis Bluesteel <sisbluesteel@aol.com> wrote:
>> Hello,
>>
>> With HTML5 form validation comes a possibility to validate user written data
>> without any server intervention (Before actually sending the whole form
>> data) or custom client-side scripting. However, currently there is no
>> predefined functionality in the markup or Javascript for form element
>> dependencies. And with 'dependencies', I mean an element's
>> validity/availability being triggered by another element's validity. Has
>> this been considered at any point?
>>
>> Please redirect me to the right mailing list if this not the right place for
>> this kind of discussion.
>>
>> Cheers,
> There is the "Constraint Validation API" which models the validity of
> inputs based on their settings:
>
> http://www.w3.org/html/wg/drafts/html/master/#the-constraint-validation-api
>
> The method to use for dependencies would be to check another input's
> validity as part of the dependent input's checks.
>
> Thanks,
> Cameron Jones
Received on Wednesday, 4 March 2015 19:53:53 UTC