[TECHS] Review of Test #92 - auto submit select elements

As part of the Techniques Task Force I have reviewed test #92:  select 
element must not be auto-submit [1].

I believe that this test (as well as the associated HTML technique about 
auto submit checkboxes[2]) needs work before it can be accepted. 

First, I think that the test title should be changed to,   "select 
elements should not cause any extreme change in context"  since the term 
auto submit is not easily testable. 

Next, the instructions for the test need to be updated to test for an 
extreme change of context rather than simply for the existence of an 
onchange event associated with a select element.   It is possible to 
create an onchange handler for a select statement that will not cause an 
extreme change of content and will work correctly with assistive 
technologies.   For example, one selection choice that dynamically updates 
the content of another select statement can be made to work with assistive 
technologies.  I have attached an example below that contains two select 
statements.  In the first statement the user selects a continent.  When 
that choice is made, the second select statement is updated to contain the 
appropriate list of countries in the selected continent.  As long as there 
is no round trip to the server to get the new information and the updates 
are made to controls further in the reading order, this page is 
accessible.  Based on this example I have proposed the following changes 
to test #92.

Associate the test with Guideline 3.2 (Organize content consistently from 
"page to page" and make interactive components behave in predictable 
ways[3])  Level 2 Success criteria #3, Changing the setting of any input 
field should not automatically cause an extreme change in context such as 
leaving the "page."  [4].    This test is currently associated with 
Guideline 2.2.

Update the test procedures. 
Procedure:
1.      Check all select elements in the document.
2.      Check if the select element contains an onchange attribute.
3.   Examine the onchange handler for any action that will cause the page 
to reload or cause any extreme change of context.
4.   Actions that will cause the page to reload or cause an extreme change 
of context may be variations of one of the following JavaScript 
statements:
        form.submit();
        window.location.href = uri;
        elementElsewhereOnThePage.focus();  // without warning change 
focus to another element on the page
        other examples go here

Expected Results: 
1. select elements must not contain an onchange handler that causes a page 
reload or an extreme change of context.

Fail Instructions:
1. Remove the onchange event from the select statement or rework the event 
handler to not cause a page reload nor extreme change of context. 

The examples for this test would also have to be re-created to include 
more details.  I didn't create new examples since I felt this proposal 
should be discussed by the group first. 

Obviously, my proposal makes this test much more complicated but I cannot 
support a test that completely prohibits all onchange events on select 
statements.  For additional background please see Jim Thatcher's post on 
auto submit combo boxes [5].


[1] http://www.w3.org/WAI/GL/WCAG20/tests/test92.html
[2] http://www.w3.org/TR/WCAG20-HTML-TECHS/#autosubmit
[3] http://www.w3.org/TR/2004/WD-WCAG20-20041119/#consistent-behavior
[4] 
http://www.w3.org/TR/2004/WD-WCAG20-20041119/#consistent-behavior-unpredictable-change
[5] http://lists.w3.org/Archives/Public/w3c-wai-gl/2004JulSep/0242.html



Becky Gibson
Web Accessibility Architect
                                                       
IBM Emerging Internet Technologies
5 Technology Park Drive
Westford, MA 01886
Voice: 978 399-6101; t/l 333-6101
Email: gibsonb@us.ibm.com

Received on Monday, 14 February 2005 19:50:16 UTC