HTML Standard Tracker

Diff (omit for latest revision)
Filter

Short URL: http://html5.org/r/2258

File a bug

SVNBugCommentTime (UTC)
2258WF2: input.value default for checkboxes; readonly for type=range; somes notes; update the informative table of attribute applyingness.2008-10-02 03:34
Index: source
===================================================================
--- source	(revision 2257)
+++ source	(revision 2258)
@@ -25355,6 +25355,13 @@
   form-associated elements</span>, on getting, must return that
   <code>NodeList</code> object.</p>
 
+  <!-- The label element's exact default presentation and behaviour
+  should match the platform's label behaviour. For example, on
+  platforms where clicking a checkbox label checks the checkbox,
+  clicking a label element should cause a click event to be
+  synthesised and fired at the checkbox. XXX should define activation
+  behaviour here; clicking on nested link? nested label? label when it
+  has a checkbox? etc -->
 
 
   <h4>The <dfn><code>input</code></dfn> element</h4>
@@ -25610,11 +25617,11 @@
      <th> <span title="attr-input-type-week">Week</span>
      <th> <span title="attr-input-type-time">Time</span>
      <th> <span title="attr-input-type-datetime-local">Local Date and Time</span>
-
      <th> <span title="attr-input-type-number">Number</span>
      <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>
@@ -25704,8 +25711,8 @@
      <td class="yes"> Yes <!-- Week -->
      <td class="yes"> Yes <!-- Time -->
      <td class="yes"> Yes <!-- Local Date and Time -->
-     <td class="no"> &middot; <!-- Number -->
-     <td class="no"> &middot; <!-- Range -->
+     <td class="yes"> Yes <!-- Number -->
+     <td class="yes"> Yes <!-- Range -->
      <td class="no"> &middot; <!-- Checkbox -->
      <td class="no"> &middot; <!-- Radio Button -->
      <td class="no"> &middot; <!-- File -->
@@ -25729,8 +25736,8 @@
      <td class="no"> &middot; <!-- Local Date and Time -->
      <td class="no"> &middot; <!-- Number -->
      <td class="no"> &middot; <!-- Range -->
-     <td class="no"> &middot; <!-- Checkbox -->
-     <td class="no"> &middot; <!-- Radio Button -->
+     <td class="yes"> Yes <!-- Checkbox -->
+     <td class="yes"> Yes <!-- Radio Button -->
      <td class="no"> &middot; <!-- File -->
      <td class="no"> &middot; <!-- Hidden -->
      <td class="no"> &middot; <!-- Submit Button -->
@@ -25773,8 +25780,8 @@
      <td class="yes"> Yes <!-- Week -->
      <td class="yes"> Yes <!-- Time -->
      <td class="yes"> Yes <!-- Local Date and Time -->
-     <td class="no"> &middot; <!-- Number -->
-     <td class="no"> &middot; <!-- Range -->
+     <td class="yes"> Yes <!-- Number -->
+     <td class="yes"> Yes <!-- Range -->
      <td class="no"> &middot; <!-- Checkbox -->
      <td class="no"> &middot; <!-- Radio Button -->
      <td class="no"> &middot; <!-- File -->
@@ -25796,8 +25803,8 @@
      <td class="yes"> Yes <!-- Week -->
      <td class="yes"> Yes <!-- Time -->
      <td class="yes"> Yes <!-- Local Date and Time -->
-     <td class="no"> &middot; <!-- Number -->
-     <td class="no"> &middot; <!-- Range -->
+     <td class="yes"> Yes <!-- Number -->
+     <td class="yes"> Yes <!-- Range -->
      <td class="no"> &middot; <!-- Checkbox -->
      <td class="no"> &middot; <!-- Radio Button -->
      <td class="no"> &middot; <!-- File -->
@@ -25865,8 +25872,8 @@
      <td class="yes"> Yes <!-- Week -->
      <td class="yes"> Yes <!-- Time -->
      <td class="yes"> Yes <!-- Local Date and Time -->
-     <td class="no"> &middot; <!-- Number -->
-     <td class="no"> &middot; <!-- Range -->
+     <td class="yes"> Yes <!-- Number -->
+     <td class="yes"> Yes <!-- Range -->
      <td class="no"> &middot; <!-- Checkbox -->
      <td class="no"> &middot; <!-- Radio Button -->
      <td class="no"> &middot; <!-- File -->
@@ -25911,8 +25918,8 @@
      <td class="yes"> Yes <!-- Week -->
      <td class="yes"> Yes <!-- Time -->
      <td class="yes"> Yes <!-- Local Date and Time -->
-     <td class="no"> &middot; <!-- Number -->
-     <td class="no"> &middot; <!-- Range -->
+     <td class="Yes"> Yes <!-- Number -->
+     <td class="Yes"> Yes <!-- Range -->
      <td class="no"> &middot; <!-- Checkbox -->
      <td class="no"> &middot; <!-- Radio Button -->
      <td class="no"> &middot; <!-- File -->
@@ -25934,10 +25941,10 @@
      <td class="yes"> Yes <!-- Week -->
      <td class="yes"> Yes <!-- Time -->
      <td class="yes"> Yes <!-- Local Date and Time -->
-     <td class="no"> &middot; <!-- Number -->
-     <td class="no"> &middot; <!-- Range -->
-     <td class="no"> &middot; <!-- Checkbox -->
-     <td class="no"> &middot; <!-- Radio Button -->
+     <td class="yes"> Yes <!-- Number -->
+     <td class="yes"> Yes <!-- Range -->
+     <td class="yes"> Yes <!-- Checkbox -->
+     <td class="yes"> Yes <!-- Radio Button -->
      <td class="no"> &middot; <!-- File -->
      <td class="no"> &middot; <!-- Hidden -->
      <td class="no"> &middot; <!-- Submit Button -->
@@ -26003,8 +26010,8 @@
      <td class="yes"> Yes <!-- Week -->
      <td class="yes"> Yes <!-- Time -->
      <td class="yes"> Yes <!-- Local Date and Time -->
-     <td class="no"> &middot; <!-- Number -->
-     <td class="no"> &middot; <!-- Range -->
+     <td class="yes"> Yes <!-- Number -->
+     <td class="yes"> Yes <!-- Range -->
      <td class="no"> &middot; <!-- Checkbox -->
      <td class="no"> &middot; <!-- Radio Button -->
      <td class="no"> &middot; <!-- File -->
@@ -26037,7 +26044,7 @@
      <td class="no"> &middot; <!-- Reset Button -->
      <td class="no"> &middot; <!-- Button -->
 
-    <tr>
+    <tr><!-- complete -->
      <th> <code title="dom-input-checked">checked</code>
      <td class="no"> &middot; <!-- Text -->
      <td class="no"> &middot; <!-- E-mail -->
@@ -26051,8 +26058,8 @@
      <td class="no"> &middot; <!-- Local Date and Time -->
      <td class="no"> &middot; <!-- Number -->
      <td class="no"> &middot; <!-- Range -->
-     <td class="no"> &middot; <!-- Checkbox -->
-     <td class="no"> &middot; <!-- Radio Button -->
+     <td class="yes"> Yes <!-- Checkbox -->
+     <td class="yes"> Yes <!-- Radio Button -->
      <td class="no"> &middot; <!-- File -->
      <td class="no"> &middot; <!-- Hidden -->
      <td class="no"> &middot; <!-- Submit Button -->
@@ -26061,19 +26068,19 @@
      <td class="no"> &middot; <!-- Button -->
 
     <tr>
-     <th> <code title="dom-input-valueAsDate">valueAsDate</code>
-     <td class="no"> &middot; <!-- Text -->
-     <td class="no"> &middot; <!-- E-mail -->
-     <td class="no"> &middot; <!-- URL -->
-     <td class="no"> &middot; <!-- Password -->
+     <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="no"> &middot; <!-- Local Date and Time -->
-     <td class="no"> &middot; <!-- Number -->
-     <td class="no"> &middot; <!-- Range -->
+     <td class="yes"> Yes <!-- Local Date and Time -->
+     <td class="yes"> Yes <!-- Number -->
+     <td class="yes"> Yes <!-- Range -->
      <td class="no"> &middot; <!-- Checkbox -->
      <td class="no"> &middot; <!-- Radio Button -->
      <td class="no"> &middot; <!-- File -->
@@ -26083,20 +26090,20 @@
      <td class="no"> &middot; <!-- Reset Button -->
      <td class="no"> &middot; <!-- Button -->
 
-    <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 -->
+    <tr><!-- complete -->
+     <th> <code title="dom-input-valueAsDate">valueAsDate</code>
+     <td class="no"> &middot; <!-- Text -->
+     <td class="no"> &middot; <!-- E-mail -->
+     <td class="no"> &middot; <!-- URL -->
+     <td class="no"> &middot; <!-- 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"> &middot; <!-- Local Date and Time -->
+     <td class="no"> &middot; <!-- Number -->
+     <td class="no"> &middot; <!-- Range -->
      <td class="no"> &middot; <!-- Checkbox -->
      <td class="no"> &middot; <!-- Radio Button -->
      <td class="no"> &middot; <!-- File -->
@@ -26118,8 +26125,8 @@
      <td class="yes"> Yes <!-- Week -->
      <td class="yes"> Yes <!-- Time -->
      <td class="yes"> Yes <!-- Local Date and Time -->
-     <td class="no"> &middot; <!-- Number -->
-     <td class="no"> &middot; <!-- Range -->
+     <td class="yes"> Yes <!-- Number -->
+     <td class="yes"> Yes <!-- Range -->
      <td class="no"> &middot; <!-- Checkbox -->
      <td class="no"> &middot; <!-- Radio Button -->
      <td class="no"> &middot; <!-- File -->
@@ -26141,8 +26148,8 @@
      <td class="yes"> Yes <!-- Week -->
      <td class="yes"> Yes <!-- Time -->
      <td class="yes"> Yes <!-- Local Date and Time -->
-     <td class="no"> &middot; <!-- Number -->
-     <td class="no"> &middot; <!-- Range -->
+     <td class="yes"> Yes <!-- Number -->
+     <td class="yes"> Yes <!-- Range -->
      <td class="no"> &middot; <!-- Checkbox -->
      <td class="no"> &middot; <!-- Radio Button -->
      <td class="no"> &middot; <!-- File -->
@@ -26164,8 +26171,8 @@
      <td class="yes"> Yes <!-- Week -->
      <td class="yes"> Yes <!-- Time -->
      <td class="yes"> Yes <!-- Local Date and Time -->
-     <td class="no"> &middot; <!-- Number -->
-     <td class="no"> &middot; <!-- Range -->
+     <td class="yes"> Yes <!-- Number -->
+     <td class="yes"> Yes <!-- Range -->
      <td class="no"> &middot; <!-- Checkbox -->
      <td class="no"> &middot; <!-- Radio Button -->
      <td class="no"> &middot; <!-- File -->
@@ -26187,8 +26194,8 @@
      <td class="yes"> Yes <!-- Week -->
      <td class="yes"> Yes <!-- Time -->
      <td class="yes"> Yes <!-- Local Date and Time -->
-     <td class="no"> &middot; <!-- Number -->
-     <td class="no"> &middot; <!-- Range -->
+     <td class="yes"> Yes <!-- Number -->
+     <td class="yes"> Yes <!-- Range -->
      <td class="no"> &middot; <!-- Checkbox -->
      <td class="no"> &middot; <!-- Radio Button -->
      <td class="no"> &middot; <!-- File -->
@@ -26210,8 +26217,8 @@
      <td class="yes"> Yes <!-- Week -->
      <td class="yes"> Yes <!-- Time -->
      <td class="yes"> Yes <!-- Local Date and Time -->
-     <td class="no"> &middot; <!-- Number -->
-     <td class="no"> &middot; <!-- Range -->
+     <td class="yes"> Yes <!-- Number -->
+     <td class="yes"> Yes <!-- Range -->
      <td class="no"> &middot; <!-- Checkbox -->
      <td class="no"> &middot; <!-- Radio Button -->
      <td class="no"> &middot; <!-- File -->
@@ -26397,6 +26404,9 @@
   serialisation. e.g. should it be 2008-01-01T00:00 or
   2008-01-01t00:00? should it be 1e2 or 100? -->
 
+  <!-- XXX for each of these, need to say when to fire oninput,
+  onchange, and when required='' is satisfied -->
+
   <h6><dfn title="attr-input-type-text">Text</dfn> state</h6>
 
   <p>When an <code>input</code> element's <code
@@ -27598,7 +27608,6 @@
   <code title="attr-input-list">list</code>,
   <code title="attr-input-max">max</code>,
   <code title="attr-input-min">min</code>,
-  <code title="attr-input-readonly">readonly</code>,
   <code title="attr-input-required">required</code>, and
   <code title="attr-input-step">step</code> content attributes;
   <code title="dom-input-list">list</code>,
@@ -27618,6 +27627,7 @@
   <code class="no-backref" title="attr-input-maxlength">maxlength</code>,
   <code class="no-backref" title="attr-fs-method">method</code>,
   <code class="no-backref" title="attr-input-pattern">pattern</code>,
+  <code class="no-backref" title="attr-input-readonly">readonly</code>,
   <code class="no-backref" title="attr-input-size">size</code>,
   <code class="no-backref" title="attr-input-src">src</code>, and
   <code class="no-backref" title="attr-fs-target">target</code>.</p>
@@ -28131,9 +28141,12 @@
   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 it must <span>reflect</span> the
-  element's <code title="attr-input-value">value</code> content
-  attribute.</p>
+  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>
 
   <p>The <dfn title="dom-input-checked"><code>checked</code></dfn> DOM
   attribute allows scripts to manipulate the <span

|