[html5] r2262 - [] (0) WF2: Complete the informative table for <input>; redefine input.value so [...]

whatwg at whatwg.org whatwg at whatwg.org
Thu Oct 2 02:46:08 PDT 2008


Author: ianh
Date: 2008-10-02 02:46:07 -0700 (Thu, 02 Oct 2008)
New Revision: 2262

Modified:
   index
   source
Log:
[] (0) WF2: Complete the informative table for <input>; redefine input.value so it handles the various behaviors that the states have.

Modified: index
===================================================================
--- index	2008-10-02 09:12:41 UTC (rev 2261)
+++ index	2008-10-02 09:46:07 UTC (rev 2262)
@@ -23059,7 +23059,6 @@
      <th> <a href=#range-state title=attr-input-type-range>Range</a>
      <th> <a href=#checkbox-state title=attr-input-type-checkbox>Checkbox</a>
      <th> <a href=#radio-button-state title=attr-input-type-radio>Radio Button</a>
-
      <th> <a href=#file-state title=attr-input-type-file>File</a>
      <th> <a href=#hidden-state title=attr-input-type-hidden>Hidden</a>
      <th> <a href=#submit-button-state title=attr-input-type-submit>Submit Button</a>
@@ -23067,7 +23066,7 @@
      <th> <a href=#reset-button-state title=attr-input-type-reset>Reset Button</a>
      <th> <a href=#button-state title=attr-input-type-button>Button</a>
 
-   <tbody><tr><!-- complete --><th> <code title=attr-input-accept><a href=#attr-input-accept>accept</a></code>
+   <tbody><tr><th> <code title=attr-input-accept><a href=#attr-input-accept>accept</a></code>
      <td class=no> · <!-- Text -->
      <td class=no> · <!-- E-mail -->
      <td class=no> · <!-- URL -->
@@ -23106,8 +23105,8 @@
      <td class=no> · <!-- Radio Button -->
      <td class=no> · <!-- File -->
      <td class=no> · <!-- Hidden -->
-     <td class=no> · <!-- Submit Button -->
-     <td class=no> · <!-- Image Button -->
+     <td class=yes> Yes <!-- Submit Button -->
+     <td class=yes> Yes <!-- Image Button -->
      <td class=no> · <!-- Reset Button -->
      <td class=no> · <!-- Button -->
 
@@ -23129,7 +23128,7 @@
      <td class=no> · <!-- File -->
      <td class=no> · <!-- Hidden -->
      <td class=no> · <!-- Submit Button -->
-     <td class=no> · <!-- Image Button -->
+     <td class=yes> Yes <!-- Image Button -->
      <td class=no> · <!-- Reset Button -->
      <td class=no> · <!-- Button -->
 
@@ -23194,8 +23193,8 @@
      <td class=no> · <!-- Radio Button -->
      <td class=no> · <!-- File -->
      <td class=no> · <!-- Hidden -->
-     <td class=no> · <!-- Submit Button -->
-     <td class=no> · <!-- Image Button -->
+     <td class=yes> Yes <!-- Submit Button -->
+     <td class=yes> Yes <!-- Image Button -->
      <td class=no> · <!-- Reset Button -->
      <td class=no> · <!-- Button -->
 
@@ -23282,8 +23281,8 @@
      <td class=no> · <!-- Radio Button -->
      <td class=no> · <!-- File -->
      <td class=no> · <!-- Hidden -->
-     <td class=no> · <!-- Submit Button -->
-     <td class=no> · <!-- Image Button -->
+     <td class=yes> Yes <!-- Submit Button -->
+     <td class=yes> Yes <!-- Image Button -->
      <td class=no> · <!-- Reset Button -->
      <td class=no> · <!-- Button -->
 
@@ -23368,7 +23367,7 @@
      <td class=yes> Yes <!-- Range -->
      <td class=yes> Yes <!-- Checkbox -->
      <td class=yes> Yes <!-- Radio Button -->
-     <td class=no> · <!-- File -->
+     <td class=yes> Yes <!-- File -->
      <td class=no> · <!-- Hidden -->
      <td class=no> · <!-- Submit Button -->
      <td class=no> · <!-- Image Button -->
@@ -23415,7 +23414,7 @@
      <td class=no> · <!-- File -->
      <td class=no> · <!-- Hidden -->
      <td class=no> · <!-- Submit Button -->
-     <td class=no> · <!-- Image Button -->
+     <td class=yes> Yes <!-- Image Button -->
      <td class=no> · <!-- Reset Button -->
      <td class=no> · <!-- Button -->
 
@@ -23458,12 +23457,12 @@
      <td class=no> · <!-- Radio Button -->
      <td class=no> · <!-- File -->
      <td class=no> · <!-- Hidden -->
-     <td class=no> · <!-- Submit Button -->
-     <td class=no> · <!-- Image Button -->
+     <td class=yes> Yes <!-- Submit Button -->
+     <td class=yes> Yes <!-- Image Button -->
      <td class=no> · <!-- Reset Button -->
      <td class=no> · <!-- Button -->
 
-    <tr><!-- complete --><th> <code title=dom-input-checked><a href=#dom-input-checked>checked</a></code>
+    <tr><th> <code title=dom-input-checked><a href=#dom-input-checked>checked</a></code>
      <td class=no> · <!-- Text -->
      <td class=no> · <!-- E-mail -->
      <td class=no> · <!-- URL -->
@@ -23486,28 +23485,28 @@
      <td class=no> · <!-- Button -->
 
     <tr><th> <code title=dom-input-value><a href=#dom-input-value>value</a></code>
-     <td class=yes> Yes <!-- Text -->
-     <td class=yes> Yes <!-- E-mail -->
-     <td class=yes> Yes <!-- URL -->
-     <td class=yes> Yes <!-- Password -->
-     <td class=yes> Yes <!-- Date and Time -->
-     <td class=yes> Yes <!-- Date -->
-     <td class=yes> Yes <!-- Month -->
-     <td class=yes> Yes <!-- Week -->
-     <td class=yes> Yes <!-- Time -->
-     <td class=yes> Yes <!-- Local Date and Time -->
-     <td class=yes> Yes <!-- Number -->
-     <td class=yes> Yes <!-- Range -->
-     <td class=no> · <!-- Checkbox -->
-     <td class=no> · <!-- Radio Button -->
+     <td class=yes> <a href=#dom-input-value-value title=dom-input-value-value>value</a> <!-- Text -->
+     <td class=yes> <a href=#dom-input-value-value title=dom-input-value-value>value</a> <!-- E-mail -->
+     <td class=yes> <a href=#dom-input-value-value title=dom-input-value-value>value</a> <!-- URL -->
+     <td class=yes> <a href=#dom-input-value-value title=dom-input-value-value>value</a> <!-- Password -->
+     <td class=yes> <a href=#dom-input-value-value title=dom-input-value-value>value</a> <!-- Date and Time -->
+     <td class=yes> <a href=#dom-input-value-value title=dom-input-value-value>value</a> <!-- Date -->
+     <td class=yes> <a href=#dom-input-value-value title=dom-input-value-value>value</a> <!-- Month -->
+     <td class=yes> <a href=#dom-input-value-value title=dom-input-value-value>value</a> <!-- Week -->
+     <td class=yes> <a href=#dom-input-value-value title=dom-input-value-value>value</a> <!-- Time -->
+     <td class=yes> <a href=#dom-input-value-value title=dom-input-value-value>value</a> <!-- Local Date and Time -->
+     <td class=yes> <a href=#dom-input-value-value title=dom-input-value-value>value</a> <!-- Number -->
+     <td class=yes> <a href=#dom-input-value-value title=dom-input-value-value>value</a> <!-- Range -->
+     <td class=yes> <a href=#dom-input-value-default-on title=dom-input-value-default-on>default/on</a> <!-- Checkbox -->
+     <td class=yes> <a href=#dom-input-value-default-on title=dom-input-value-default-on>default/on</a> <!-- Radio Button -->
      <td class=no> · <!-- File -->
-     <td class=no> · <!-- Hidden -->
-     <td class=no> · <!-- Submit Button -->
-     <td class=no> · <!-- Image Button -->
-     <td class=no> · <!-- Reset Button -->
-     <td class=no> · <!-- Button -->
+     <td class=yes> <a href=#dom-input-value-value title=dom-input-value-value>value</a> <!-- Hidden -->
+     <td class=yes> <a href=#dom-input-value-default title=dom-input-value-default>default</a> <!-- Submit Button -->
+     <td class=yes> <a href=#dom-input-value-default title=dom-input-value-default>default</a> <!-- Image Button -->
+     <td class=yes> <a href=#dom-input-value-default title=dom-input-value-default>default</a> <!-- Reset Button -->
+     <td class=yes> <a href=#dom-input-value-default title=dom-input-value-default>default</a> <!-- Button -->
 
-    <tr><!-- complete --><th> <code title=dom-input-valueAsDate><a href=#dom-input-valueasdate>valueAsDate</a></code>
+    <tr><th> <code title=dom-input-valueAsDate><a href=#dom-input-valueasdate>valueAsDate</a></code>
      <td class=no> · <!-- Text -->
      <td class=no> · <!-- E-mail -->
      <td class=no> · <!-- URL -->
@@ -23791,6 +23790,9 @@
   <code title=dom-input-selectedOption><a href=#dom-input-selectedoption>selectedOption</a></code>, and
   <code title=dom-input-value><a href=#dom-input-value>value</a></code> DOM attributes.
 
+  <p>The <code title=dom-input-value><a href=#dom-input-value>value</a></code> DOM attribute is
+  in mode <a href=#dom-input-value-value title=dom-input-value-value>value</a>.</p>
+
   <p>The following content attributes must not be specified and do not
   apply to the element:
   <code class=no-backref title=attr-input-accept><a href=#attr-input-accept>accept</a></code>,
@@ -23854,6 +23856,9 @@
   <code title=dom-input-selectedOption><a href=#dom-input-selectedoption>selectedOption</a></code>, and
   <code title=dom-input-value><a href=#dom-input-value>value</a></code> DOM attributes.
 
+  <p>The <code title=dom-input-value><a href=#dom-input-value>value</a></code> DOM attribute is
+  in mode <a href=#dom-input-value-value title=dom-input-value-value>value</a>.</p>
+
   <p>The following content attributes must not be specified and do not
   apply to the element:
   <code class=no-backref title=attr-input-accept><a href=#attr-input-accept>accept</a></code>,
@@ -23914,6 +23919,9 @@
   <code title=dom-input-selectedOption><a href=#dom-input-selectedoption>selectedOption</a></code>, and
   <code title=dom-input-value><a href=#dom-input-value>value</a></code> DOM attributes.
 
+  <p>The <code title=dom-input-value><a href=#dom-input-value>value</a></code> DOM attribute is
+  in mode <a href=#dom-input-value-value title=dom-input-value-value>value</a>.</p>
+
   <p>The following content attributes must not be specified and do not
   apply to the element:
   <code class=no-backref title=attr-input-accept><a href=#attr-input-accept>accept</a></code>,
@@ -24081,6 +24089,9 @@
   <code title=dom-input-stepUp><a href=#dom-input-stepup>stepUp()</a></code>, and
   <code title=dom-input-stepDown><a href=#dom-input-stepdown>stepDown()</a></code> methods.</p>
 
+  <p>The <code title=dom-input-value><a href=#dom-input-value>value</a></code> DOM attribute is
+  in mode <a href=#dom-input-value-value title=dom-input-value-value>value</a>.</p>
+
   <p>The following content attributes must not be specified and do not
   apply to the element:
   <code class=no-backref title=attr-input-accept><a href=#attr-input-accept>accept</a></code>,
@@ -24190,6 +24201,9 @@
   <code title=dom-input-stepUp><a href=#dom-input-stepup>stepUp()</a></code>, and
   <code title=dom-input-stepDown><a href=#dom-input-stepdown>stepDown()</a></code> methods.</p>
 
+  <p>The <code title=dom-input-value><a href=#dom-input-value>value</a></code> DOM attribute is
+  in mode <a href=#dom-input-value-value title=dom-input-value-value>value</a>.</p>
+
   <p>The following content attributes must not be specified and do not
   apply to the element:
   <code class=no-backref title=attr-input-accept><a href=#attr-input-accept>accept</a></code>,
@@ -24299,6 +24313,9 @@
   <code title=dom-input-stepUp><a href=#dom-input-stepup>stepUp()</a></code>, and
   <code title=dom-input-stepDown><a href=#dom-input-stepdown>stepDown()</a></code> methods.</p>
 
+  <p>The <code title=dom-input-value><a href=#dom-input-value>value</a></code> DOM attribute is
+  in mode <a href=#dom-input-value-value title=dom-input-value-value>value</a>.</p>
+
   <p>The following content attributes must not be specified and do not
   apply to the element:
   <code class=no-backref title=attr-input-accept><a href=#attr-input-accept>accept</a></code>,
@@ -24408,6 +24425,9 @@
   <code title=dom-input-stepUp><a href=#dom-input-stepup>stepUp()</a></code>, and
   <code title=dom-input-stepDown><a href=#dom-input-stepdown>stepDown()</a></code> methods.</p>
 
+  <p>The <code title=dom-input-value><a href=#dom-input-value>value</a></code> DOM attribute is
+  in mode <a href=#dom-input-value-value title=dom-input-value-value>value</a>.</p>
+
   <p>The following content attributes must not be specified and do not
   apply to the element:
   <code class=no-backref title=attr-input-accept><a href=#attr-input-accept>accept</a></code>,
@@ -24511,6 +24531,9 @@
   <code title=dom-input-stepUp><a href=#dom-input-stepup>stepUp()</a></code>, and
   <code title=dom-input-stepDown><a href=#dom-input-stepdown>stepDown()</a></code> methods.</p>
 
+  <p>The <code title=dom-input-value><a href=#dom-input-value>value</a></code> DOM attribute is
+  in mode <a href=#dom-input-value-value title=dom-input-value-value>value</a>.</p>
+
   <p>The following content attributes must not be specified and do not
   apply to the element:
   <code class=no-backref title=attr-input-accept><a href=#attr-input-accept>accept</a></code>,
@@ -24606,6 +24629,9 @@
   <code title=dom-input-stepUp><a href=#dom-input-stepup>stepUp()</a></code>, and
   <code title=dom-input-stepDown><a href=#dom-input-stepdown>stepDown()</a></code> methods.</p>
 
+  <p>The <code title=dom-input-value><a href=#dom-input-value>value</a></code> DOM attribute is
+  in mode <a href=#dom-input-value-value title=dom-input-value-value>value</a>.</p>
+
   <p>The following content attributes must not be specified and do not
   apply to the element:
   <code class=no-backref title=attr-input-accept><a href=#attr-input-accept>accept</a></code>,
@@ -24695,6 +24721,9 @@
   <code title=dom-input-stepUp><a href=#dom-input-stepup>stepUp()</a></code>, and
   <code title=dom-input-stepDown><a href=#dom-input-stepdown>stepDown()</a></code> methods.</p>
 
+  <p>The <code title=dom-input-value><a href=#dom-input-value>value</a></code> DOM attribute is
+  in mode <a href=#dom-input-value-value title=dom-input-value-value>value</a>.</p>
+
   <p>The following content attributes must not be specified and do not
   apply to the element:
   <code class=no-backref title=attr-input-accept><a href=#attr-input-accept>accept</a></code>,
@@ -24811,6 +24840,9 @@
   <code title=dom-input-stepUp><a href=#dom-input-stepup>stepUp()</a></code>, and
   <code title=dom-input-stepDown><a href=#dom-input-stepdown>stepDown()</a></code> methods.</p>
 
+  <p>The <code title=dom-input-value><a href=#dom-input-value>value</a></code> DOM attribute is
+  in mode <a href=#dom-input-value-value title=dom-input-value-value>value</a>.</p>
+
   <p>The following content attributes must not be specified and do not
   apply to the element:
   <code class=no-backref title=attr-input-accept><a href=#attr-input-accept>accept</a></code>,
@@ -24853,8 +24885,12 @@
   attributes and DOM attributes apply to the element:
   <code title=attr-input-checked><a href=#attr-input-checked>checked</a></code>, and
   <code title=attr-input-required><a href=#attr-input-required>required</a></code> content attributes;
-  <code class=no-backref title=dom-input-checked><a href=#dom-input-checked>checked</a></code> DOM attribute.</p>
+  <code title=dom-input-checked><a href=#dom-input-checked>checked</a></code> and
+  <code title=dom-input-value><a href=#dom-input-value>value</a></code> DOM attributes.</p>
 
+  <p>The <code title=dom-input-value><a href=#dom-input-value>value</a></code> DOM attribute is
+  in mode <a href=#dom-input-value-default-on title=dom-input-value-default-on>default/on</a>.</p>
+
   <p>The following content attributes must not be specified and do not
   apply to the element:
   <code class=no-backref title=attr-input-accept><a href=#attr-input-accept>accept</a></code>,
@@ -24877,7 +24913,6 @@
   <p>The following DOM attributes and methods do not apply to the element:
   <code class=no-backref title=dom-input-list><a href=#dom-input-list>list</a></code>,
   <code class=no-backref title=dom-input-selectedOption><a href=#dom-input-selectedoption>selectedOption</a></code>,
-  <code class=no-backref title=dom-input-value><a href=#dom-input-value>value</a></code>,
   <code class=no-backref title=dom-input-valueAsDate><a href=#dom-input-valueasdate>valueAsDate</a></code> and
   <code class=no-backref title=dom-input-valueAsNumber><a href=#dom-input-valueasnumber>valueAsNumber</a></code> DOM attributes;
   <code class=no-backref title=dom-input-stepDown><a href=#dom-input-stepdown>stepDown()</a></code> and
@@ -24942,8 +24977,12 @@
   attributes and DOM attributes apply to the element:
   <code title=attr-input-checked><a href=#attr-input-checked>checked</a></code> and
   <code title=attr-input-required><a href=#attr-input-required>required</a></code> content attributes;
-  <code class=no-backref title=dom-input-checked><a href=#dom-input-checked>checked</a></code> DOM attribute.</p>
+  <code title=dom-input-checked><a href=#dom-input-checked>checked</a></code> and
+  <code title=dom-input-value><a href=#dom-input-value>value</a></code> DOM attributes.</p>
 
+  <p>The <code title=dom-input-value><a href=#dom-input-value>value</a></code> DOM attribute is
+  in mode <a href=#dom-input-value-default-on title=dom-input-value-default-on>default/on</a>.</p>
+
   <p>The following content attributes must not be specified and do not
   apply to the element:
   <code class=no-backref title=attr-input-accept><a href=#attr-input-accept>accept</a></code>,
@@ -24966,7 +25005,6 @@
   <p>The following DOM attributes and methods do not apply to the element:
   <code class=no-backref title=dom-input-list><a href=#dom-input-list>list</a></code>,
   <code class=no-backref title=dom-input-selectedOption><a href=#dom-input-selectedoption>selectedOption</a></code>,
-  <code class=no-backref title=dom-input-value><a href=#dom-input-value>value</a></code>,
   <code class=no-backref title=dom-input-valueAsDate><a href=#dom-input-valueasdate>valueAsDate</a></code> and
   <code class=no-backref title=dom-input-valueAsNumber><a href=#dom-input-valueasnumber>valueAsNumber</a></code> DOM attributes;
   <code class=no-backref title=dom-input-stepDown><a href=#dom-input-stepdown>stepDown()</a></code> and
@@ -25356,20 +25394,34 @@
 
   <p>The <dfn id=dom-input-value title=dom-input-value><code>value</code></dfn> DOM
   attribute allows scripts to manipulate the <a href=#concept-fe-value title=concept-fe-value>value</a> of an <code><a href=#the-input-element>input</a></code>
-  element. If the attribute applies, then on getting, it must return
-  the current <a href=#concept-fe-value title=concept-fe-value>value</a> of the
-  element; and on setting, it must set the element's <a href=#concept-fe-value title=concept-fe-value>value</a> to the new value, set the
-  element's <a href=#concept-input-value-dirty-flag title=concept-input-value-dirty-flag>dirty value
-  flag</a> to true, and then invoke the <a href=#value-sanitization-algorithm>value sanitization
-  algorithm</a> defined for the element's <code title=attr-input-type><a href=#attr-input-type>type</a></code> attribute's current state. If
-  the attribute does not apply, then on getting, if the element has a
-  <code title=attr-input-value><a href=#attr-input-value>value</a></code> attribute, it must
-  return that attribute's value; otherwise, it must return the string
-  "<code title="">on</code>"; and on setting, it must set the
-  element's <code title=attr-input-value><a href=#attr-input-value>value</a></code> attribute to
-  the new value.</p>
+  element. If the attribute applies, then it is in one of the
+  following modes, which define its behavior:</p>
 
-  <p>The <dfn id=dom-input-checked title=dom-input-checked><code>checked</code></dfn> DOM
+  <dl><dt><dfn id=dom-input-value-value title=dom-input-value-value>value</dfn>
+
+   <dd>On getting, it must return the current <a href=#concept-fe-value title=concept-fe-value>value</a> of the element. On setting,
+   it must set the element's <a href=#concept-fe-value title=concept-fe-value>value</a> to the new value, set the
+   element's <a href=#concept-input-value-dirty-flag title=concept-input-value-dirty-flag>dirty value
+   flag</a> to true, and then invoke the <a href=#value-sanitization-algorithm>value sanitization
+   algorithm</a> defined for the element's <code title=attr-input-type><a href=#attr-input-type>type</a></code> attribute's current state.</dd>
+
+   <dt><dfn id=dom-input-value-default title=dom-input-value-default>default</dfn>
+
+   <dd>On getting, if the element has a <code title=attr-input-value><a href=#attr-input-value>value</a></code> attribute, it must return
+   that attribute's value; otherwise, it must return the empty
+   string. On setting, it must set the element's <code title=attr-input-value><a href=#attr-input-value>value</a></code> attribute to the new
+   value.</dd>
+
+   <dt><dfn id=dom-input-value-default-on title=dom-input-value-default-on>default/on</dfn>
+
+   <dd>On getting, if the element has a <code title=attr-input-value><a href=#attr-input-value>value</a></code> attribute, it must return
+   that attribute's value; otherwise, it must return the string "<code title="">on</code>". On setting, it must set the element's <code title=attr-input-value><a href=#attr-input-value>value</a></code> attribute to the new
+   value.</dd>
+
+  </dl><p>If the attribute does not apply, then on getting and setting it
+  must throw an <code>INVALID_ACCESS_ERR</code> exception.</p>
+
+  <hr><p>The <dfn id=dom-input-checked title=dom-input-checked><code>checked</code></dfn> DOM
   attribute allows scripts to manipulate the <a href=#concept-fe-checked title=concept-fe-checked>checkedness</a> of an
   <code><a href=#the-input-element>input</a></code> element. On getting, it must return the current
   <a href=#concept-fe-checked title=concept-fe-checked>checkedness</a> of the element;

Modified: source
===================================================================
--- source	2008-10-02 09:12:41 UTC (rev 2261)
+++ source	2008-10-02 09:46:07 UTC (rev 2262)
@@ -25621,7 +25621,6 @@
      <th> <span title="attr-input-type-range">Range</span>
      <th> <span title="attr-input-type-checkbox">Checkbox</span>
      <th> <span title="attr-input-type-radio">Radio Button</span>
-
      <th> <span title="attr-input-type-file">File</span>
      <th> <span title="attr-input-type-hidden">Hidden</span>
      <th> <span title="attr-input-type-submit">Submit Button</span>
@@ -25630,7 +25629,7 @@
      <th> <span title="attr-input-type-button">Button</span>
 
    <tbody>
-    <tr><!-- complete -->
+    <tr>
      <th> <code title="attr-input-accept">accept</code>
      <td class="no"> · <!-- Text -->
      <td class="no"> · <!-- E-mail -->
@@ -25671,8 +25670,8 @@
      <td class="no"> · <!-- Radio Button -->
      <td class="no"> · <!-- File -->
      <td class="no"> · <!-- Hidden -->
-     <td class="no"> · <!-- Submit Button -->
-     <td class="no"> · <!-- Image Button -->
+     <td class="yes"> Yes <!-- Submit Button -->
+     <td class="yes"> Yes <!-- Image Button -->
      <td class="no"> · <!-- Reset Button -->
      <td class="no"> · <!-- Button -->
 
@@ -25695,7 +25694,7 @@
      <td class="no"> · <!-- File -->
      <td class="no"> · <!-- Hidden -->
      <td class="no"> · <!-- Submit Button -->
-     <td class="no"> · <!-- Image Button -->
+     <td class="yes"> Yes <!-- Image Button -->
      <td class="no"> · <!-- Reset Button -->
      <td class="no"> · <!-- Button -->
 
@@ -25763,8 +25762,8 @@
      <td class="no"> · <!-- Radio Button -->
      <td class="no"> · <!-- File -->
      <td class="no"> · <!-- Hidden -->
-     <td class="no"> · <!-- Submit Button -->
-     <td class="no"> · <!-- Image Button -->
+     <td class="yes"> Yes <!-- Submit Button -->
+     <td class="yes"> Yes <!-- Image Button -->
      <td class="no"> · <!-- Reset Button -->
      <td class="no"> · <!-- Button -->
 
@@ -25855,8 +25854,8 @@
      <td class="no"> · <!-- Radio Button -->
      <td class="no"> · <!-- File -->
      <td class="no"> · <!-- Hidden -->
-     <td class="no"> · <!-- Submit Button -->
-     <td class="no"> · <!-- Image Button -->
+     <td class="yes"> Yes <!-- Submit Button -->
+     <td class="yes"> Yes <!-- Image Button -->
      <td class="no"> · <!-- Reset Button -->
      <td class="no"> · <!-- Button -->
 
@@ -25945,7 +25944,7 @@
      <td class="yes"> Yes <!-- Range -->
      <td class="yes"> Yes <!-- Checkbox -->
      <td class="yes"> Yes <!-- Radio Button -->
-     <td class="no"> · <!-- File -->
+     <td class="yes"> Yes <!-- File -->
      <td class="no"> · <!-- Hidden -->
      <td class="no"> · <!-- Submit Button -->
      <td class="no"> · <!-- Image Button -->
@@ -25994,7 +25993,7 @@
      <td class="no"> · <!-- File -->
      <td class="no"> · <!-- Hidden -->
      <td class="no"> · <!-- Submit Button -->
-     <td class="no"> · <!-- Image Button -->
+     <td class="yes"> Yes <!-- Image Button -->
      <td class="no"> · <!-- Reset Button -->
      <td class="no"> · <!-- Button -->
 
@@ -26039,12 +26038,12 @@
      <td class="no"> · <!-- Radio Button -->
      <td class="no"> · <!-- File -->
      <td class="no"> · <!-- Hidden -->
-     <td class="no"> · <!-- Submit Button -->
-     <td class="no"> · <!-- Image Button -->
+     <td class="yes"> Yes <!-- Submit Button -->
+     <td class="yes"> Yes <!-- Image Button -->
      <td class="no"> · <!-- Reset Button -->
      <td class="no"> · <!-- Button -->
 
-    <tr><!-- complete -->
+    <tr>
      <th> <code title="dom-input-checked">checked</code>
      <td class="no"> · <!-- Text -->
      <td class="no"> · <!-- E-mail -->
@@ -26069,28 +26068,28 @@
 
     <tr>
      <th> <code title="dom-input-value">value</code>
-     <td class="yes"> Yes <!-- Text -->
-     <td class="yes"> Yes <!-- E-mail -->
-     <td class="yes"> Yes <!-- URL -->
-     <td class="yes"> Yes <!-- Password -->
-     <td class="yes"> Yes <!-- Date and Time -->
-     <td class="yes"> Yes <!-- Date -->
-     <td class="yes"> Yes <!-- Month -->
-     <td class="yes"> Yes <!-- Week -->
-     <td class="yes"> Yes <!-- Time -->
-     <td class="yes"> Yes <!-- Local Date and Time -->
-     <td class="yes"> Yes <!-- Number -->
-     <td class="yes"> Yes <!-- Range -->
-     <td class="no"> · <!-- Checkbox -->
-     <td class="no"> · <!-- Radio Button -->
+     <td class="yes"> <span title="dom-input-value-value">value</span> <!-- Text -->
+     <td class="yes"> <span title="dom-input-value-value">value</span> <!-- E-mail -->
+     <td class="yes"> <span title="dom-input-value-value">value</span> <!-- URL -->
+     <td class="yes"> <span title="dom-input-value-value">value</span> <!-- Password -->
+     <td class="yes"> <span title="dom-input-value-value">value</span> <!-- Date and Time -->
+     <td class="yes"> <span title="dom-input-value-value">value</span> <!-- Date -->
+     <td class="yes"> <span title="dom-input-value-value">value</span> <!-- Month -->
+     <td class="yes"> <span title="dom-input-value-value">value</span> <!-- Week -->
+     <td class="yes"> <span title="dom-input-value-value">value</span> <!-- Time -->
+     <td class="yes"> <span title="dom-input-value-value">value</span> <!-- Local Date and Time -->
+     <td class="yes"> <span title="dom-input-value-value">value</span> <!-- Number -->
+     <td class="yes"> <span title="dom-input-value-value">value</span> <!-- Range -->
+     <td class="yes"> <span title="dom-input-value-default-on">default/on</span> <!-- Checkbox -->
+     <td class="yes"> <span title="dom-input-value-default-on">default/on</span> <!-- Radio Button -->
      <td class="no"> · <!-- File -->
-     <td class="no"> · <!-- Hidden -->
-     <td class="no"> · <!-- Submit Button -->
-     <td class="no"> · <!-- Image Button -->
-     <td class="no"> · <!-- Reset Button -->
-     <td class="no"> · <!-- Button -->
+     <td class="yes"> <span title="dom-input-value-value">value</span> <!-- Hidden -->
+     <td class="yes"> <span title="dom-input-value-default">default</span> <!-- Submit Button -->
+     <td class="yes"> <span title="dom-input-value-default">default</span> <!-- Image Button -->
+     <td class="yes"> <span title="dom-input-value-default">default</span> <!-- Reset Button -->
+     <td class="yes"> <span title="dom-input-value-default">default</span> <!-- Button -->
 
-    <tr><!-- complete -->
+    <tr>
      <th> <code title="dom-input-valueAsDate">valueAsDate</code>
      <td class="no"> · <!-- Text -->
      <td class="no"> · <!-- E-mail -->
@@ -26440,6 +26439,9 @@
   <code title="dom-input-selectedOption">selectedOption</code>, and
   <code title="dom-input-value">value</code> DOM attributes.
 
+  <p>The <code title="dom-input-value">value</code> DOM attribute is
+  in mode <span title="dom-input-value-value">value</span>.</p>
+
   <p>The following content attributes must not be specified and do not
   apply to the element:
   <code class="no-backref" title="attr-input-accept">accept</code>,
@@ -26511,6 +26513,9 @@
   <code title="dom-input-selectedOption">selectedOption</code>, and
   <code title="dom-input-value">value</code> DOM attributes.
 
+  <p>The <code title="dom-input-value">value</code> DOM attribute is
+  in mode <span title="dom-input-value-value">value</span>.</p>
+
   <p>The following content attributes must not be specified and do not
   apply to the element:
   <code class="no-backref" title="attr-input-accept">accept</code>,
@@ -26578,6 +26583,9 @@
   <code title="dom-input-selectedOption">selectedOption</code>, and
   <code title="dom-input-value">value</code> DOM attributes.
 
+  <p>The <code title="dom-input-value">value</code> DOM attribute is
+  in mode <span title="dom-input-value-value">value</span>.</p>
+
   <p>The following content attributes must not be specified and do not
   apply to the element:
   <code class="no-backref" title="attr-input-accept">accept</code>,
@@ -26770,6 +26778,9 @@
   <code title="dom-input-stepUp">stepUp()</code>, and
   <code title="dom-input-stepDown">stepDown()</code> methods.</p>
 
+  <p>The <code title="dom-input-value">value</code> DOM attribute is
+  in mode <span title="dom-input-value-value">value</span>.</p>
+
   <p>The following content attributes must not be specified and do not
   apply to the element:
   <code class="no-backref" title="attr-input-accept">accept</code>,
@@ -26896,6 +26907,9 @@
   <code title="dom-input-stepUp">stepUp()</code>, and
   <code title="dom-input-stepDown">stepDown()</code> methods.</p>
 
+  <p>The <code title="dom-input-value">value</code> DOM attribute is
+  in mode <span title="dom-input-value-value">value</span>.</p>
+
   <p>The following content attributes must not be specified and do not
   apply to the element:
   <code class="no-backref" title="attr-input-accept">accept</code>,
@@ -27024,6 +27038,9 @@
   <code title="dom-input-stepUp">stepUp()</code>, and
   <code title="dom-input-stepDown">stepDown()</code> methods.</p>
 
+  <p>The <code title="dom-input-value">value</code> DOM attribute is
+  in mode <span title="dom-input-value-value">value</span>.</p>
+
   <p>The following content attributes must not be specified and do not
   apply to the element:
   <code class="no-backref" title="attr-input-accept">accept</code>,
@@ -27151,6 +27168,9 @@
   <code title="dom-input-stepUp">stepUp()</code>, and
   <code title="dom-input-stepDown">stepDown()</code> methods.</p>
 
+  <p>The <code title="dom-input-value">value</code> DOM attribute is
+  in mode <span title="dom-input-value-value">value</span>.</p>
+
   <p>The following content attributes must not be specified and do not
   apply to the element:
   <code class="no-backref" title="attr-input-accept">accept</code>,
@@ -27273,6 +27293,9 @@
   <code title="dom-input-stepUp">stepUp()</code>, and
   <code title="dom-input-stepDown">stepDown()</code> methods.</p>
 
+  <p>The <code title="dom-input-value">value</code> DOM attribute is
+  in mode <span title="dom-input-value-value">value</span>.</p>
+
   <p>The following content attributes must not be specified and do not
   apply to the element:
   <code class="no-backref" title="attr-input-accept">accept</code>,
@@ -27382,6 +27405,9 @@
   <code title="dom-input-stepUp">stepUp()</code>, and
   <code title="dom-input-stepDown">stepDown()</code> methods.</p>
 
+  <p>The <code title="dom-input-value">value</code> DOM attribute is
+  in mode <span title="dom-input-value-value">value</span>.</p>
+
   <p>The following content attributes must not be specified and do not
   apply to the element:
   <code class="no-backref" title="attr-input-accept">accept</code>,
@@ -27480,6 +27506,9 @@
   <code title="dom-input-stepUp">stepUp()</code>, and
   <code title="dom-input-stepDown">stepDown()</code> methods.</p>
 
+  <p>The <code title="dom-input-value">value</code> DOM attribute is
+  in mode <span title="dom-input-value-value">value</span>.</p>
+
   <p>The following content attributes must not be specified and do not
   apply to the element:
   <code class="no-backref" title="attr-input-accept">accept</code>,
@@ -27617,6 +27646,9 @@
   <code title="dom-input-stepUp">stepUp()</code>, and
   <code title="dom-input-stepDown">stepDown()</code> methods.</p>
 
+  <p>The <code title="dom-input-value">value</code> DOM attribute is
+  in mode <span title="dom-input-value-value">value</span>.</p>
+
   <p>The following content attributes must not be specified and do not
   apply to the element:
   <code class="no-backref" title="attr-input-accept">accept</code>,
@@ -27663,8 +27695,12 @@
   attributes and DOM attributes apply to the element:
   <code title="attr-input-checked">checked</code>, and
   <code title="attr-input-required">required</code> content attributes;
-  <code class="no-backref" title="dom-input-checked">checked</code> DOM attribute.</p>
+  <code title="dom-input-checked">checked</code> and
+  <code title="dom-input-value">value</code> DOM attributes.</p>
 
+  <p>The <code title="dom-input-value">value</code> DOM attribute is
+  in mode <span title="dom-input-value-default-on">default/on</span>.</p>
+
   <p>The following content attributes must not be specified and do not
   apply to the element:
   <code class="no-backref" title="attr-input-accept">accept</code>,
@@ -27687,7 +27723,6 @@
   <p>The following DOM attributes and methods do not apply to the element:
   <code class="no-backref" title="dom-input-list">list</code>,
   <code class="no-backref" title="dom-input-selectedOption">selectedOption</code>,
-  <code class="no-backref" title="dom-input-value">value</code>,
   <code class="no-backref" title="dom-input-valueAsDate">valueAsDate</code> and
   <code class="no-backref" title="dom-input-valueAsNumber">valueAsNumber</code> DOM attributes;
   <code class="no-backref" title="dom-input-stepDown">stepDown()</code> and
@@ -27771,8 +27806,12 @@
   attributes and DOM attributes apply to the element:
   <code title="attr-input-checked">checked</code> and
   <code title="attr-input-required">required</code> content attributes;
-  <code class="no-backref" title="dom-input-checked">checked</code> DOM attribute.</p>
+  <code title="dom-input-checked">checked</code> and
+  <code title="dom-input-value">value</code> DOM attributes.</p>
 
+  <p>The <code title="dom-input-value">value</code> DOM attribute is
+  in mode <span title="dom-input-value-default-on">default/on</span>.</p>
+
   <p>The following content attributes must not be specified and do not
   apply to the element:
   <code class="no-backref" title="attr-input-accept">accept</code>,
@@ -27795,7 +27834,6 @@
   <p>The following DOM attributes and methods do not apply to the element:
   <code class="no-backref" title="dom-input-list">list</code>,
   <code class="no-backref" title="dom-input-selectedOption">selectedOption</code>,
-  <code class="no-backref" title="dom-input-value">value</code>,
   <code class="no-backref" title="dom-input-valueAsDate">valueAsDate</code> and
   <code class="no-backref" title="dom-input-valueAsNumber">valueAsNumber</code> DOM attributes;
   <code class="no-backref" title="dom-input-stepDown">stepDown()</code> and
@@ -28257,21 +28295,47 @@
   <p>The <dfn title="dom-input-value"><code>value</code></dfn> DOM
   attribute allows scripts to manipulate the <span
   title="concept-fe-value">value</span> of an <code>input</code>
-  element. If the attribute applies, then on getting, it must return
-  the current <span title="concept-fe-value">value</span> of the
-  element; and on setting, it must set the element's <span
-  title="concept-fe-value">value</span> to the new value, set the
-  element's <span title="concept-input-value-dirty-flag">dirty value
-  flag</span> to true, and then invoke the <span>value sanitization
-  algorithm</span> defined for the element's <code
-  title="attr-input-type">type</code> attribute's current state. If
-  the attribute does not apply, then on getting, if the element has a
-  <code title="attr-input-value">value</code> attribute, it must
-  return that attribute's value; otherwise, it must return the string
-  "<code title="">on</code>"; and on setting, it must set the
-  element's <code title="attr-input-value">value</code> attribute to
-  the new value.</p>
+  element. If the attribute applies, then it is in one of the
+  following modes, which define its behavior:</p>
 
+  <dl>
+
+   <dt><dfn title="dom-input-value-value">value</dfn>
+
+   <dd>On getting, it must return the current <span
+   title="concept-fe-value">value</span> of the element. On setting,
+   it must set the element's <span
+   title="concept-fe-value">value</span> to the new value, set the
+   element's <span title="concept-input-value-dirty-flag">dirty value
+   flag</span> to true, and then invoke the <span>value sanitization
+   algorithm</span> defined for the element's <code
+   title="attr-input-type">type</code> attribute's current state.</dd>
+
+   <dt><dfn title="dom-input-value-default">default</dfn>
+
+   <dd>On getting, if the element has a <code
+   title="attr-input-value">value</code> attribute, it must return
+   that attribute's value; otherwise, it must return the empty
+   string. On setting, it must set the element's <code
+   title="attr-input-value">value</code> attribute to the new
+   value.</dd>
+
+   <dt><dfn title="dom-input-value-default-on">default/on</dfn>
+
+   <dd>On getting, if the element has a <code
+   title="attr-input-value">value</code> attribute, it must return
+   that attribute's value; otherwise, it must return the string "<code
+   title="">on</code>". On setting, it must set the element's <code
+   title="attr-input-value">value</code> attribute to the new
+   value.</dd>
+
+  </dl>
+
+  <p>If the attribute does not apply, then on getting and setting it
+  must throw an <code>INVALID_ACCESS_ERR</code> exception.</p>
+
+  <hr>
+
   <p>The <dfn title="dom-input-checked"><code>checked</code></dfn> DOM
   attribute allows scripts to manipulate the <span
   title="concept-fe-checked">checkedness</span> of an




More information about the Commit-Watchers mailing list