diff options
author | wurblzap%gmail.com <> | 2006-04-18 14:58:44 +0000 |
---|---|---|
committer | wurblzap%gmail.com <> | 2006-04-18 14:58:44 +0000 |
commit | 794419cacad6de57a10228a4f839a4ed5c44d9ed (patch) | |
tree | 0489f9fd849075571d42a26e966bd64db650193c /template/en/default/search | |
parent | 6ec3903ce315493dc6cc3ded2d9c6c69b0dfc8a2 (diff) | |
download | bugs-794419cacad6de57a10228a4f839a4ed5c44d9ed.tar bugs-794419cacad6de57a10228a4f839a4ed5c44d9ed.tar.gz bugs-794419cacad6de57a10228a4f839a4ed5c44d9ed.tar.bz2 bugs-794419cacad6de57a10228a4f839a4ed5c44d9ed.tar.xz bugs-794419cacad6de57a10228a4f839a4ed5c44d9ed.zip |
Bug 281691: Misused <label>'s cause screen reader problems.
Patch by Marc Schumann <wurblzap@gmail.com>,
r=LpSolit, a=justdave
Diffstat (limited to 'template/en/default/search')
-rw-r--r-- | template/en/default/search/form.html.tmpl | 146 | ||||
-rw-r--r-- | template/en/default/search/knob.html.tmpl | 4 |
2 files changed, 82 insertions, 68 deletions
diff --git a/template/en/default/search/form.html.tmpl b/template/en/default/search/form.html.tmpl index 6b0a5a2c8..5fa3055b2 100644 --- a/template/en/default/search/form.html.tmpl +++ b/template/en/default/search/form.html.tmpl @@ -124,7 +124,9 @@ function doOnSelectProduct(selectmode) { <table> <tr> - <th align="right"><u>S</u>ummary:</th> + <th align="right"> + <label for="short_desc" accesskey="s"><u>S</u>ummary</label>: + </th> <td> <select name="short_desc_type"> [% FOREACH qv = query_variants %] @@ -134,7 +136,7 @@ function doOnSelectProduct(selectmode) { </select> </td> <td> - <input name="short_desc" size="40" accesskey="s" + <input name="short_desc" id="short_desc" size="40" value="[% default.short_desc.0 FILTER html %]"> <script type="text/javascript"> <!-- document.forms[queryform].short_desc.focus(); @@ -157,21 +159,21 @@ function doOnSelectProduct(selectmode) { <td valign="top"> <table> <tr valign="bottom"> - <th align="left"><u>C</u>lassification:</th> + <th align="left"> + <label for="classification">Classification</label>: + </th> </tr> <tr valign="top"> <td align="left"> - <label for="classification"> - <select name="classification" multiple="multiple" size="5" id="classification" - onchange="doOnSelectProduct(1);"> + <select name="classification" multiple="multiple" size="5" id="classification" + onchange="doOnSelectProduct(1);"> [% FOREACH cat = classification %] <option value="[% cat.name FILTER html %]" [% " selected" IF lsearch(default.classification, cat.name) != -1 %]> [% cat.name FILTER html %] </option> [% END %] - </select> - </label> + </select> </td> </tr> </table> @@ -180,21 +182,21 @@ function doOnSelectProduct(selectmode) { <td valign="top"> <table> <tr valign="bottom"> - <th align="left"><u>P</u>roduct:</th> + <th align="left"> + <label for="product" accesskey="p"><u>P</u>roduct</label>: + </th> </tr> <tr valign="top"> [%# Can't use the select block here because of the onChange %] <td align="left"> - <label for="product" accesskey="p"> - <select name="product" multiple="multiple" size="5" id="product" - onchange="doOnSelectProduct(2);"> + <select name="product" multiple="multiple" size="5" id="product" + onchange="doOnSelectProduct(2);"> [% FOREACH p = product %] <option value="[% p.name FILTER html %]" [% " selected" IF lsearch(default.product, p.name) != -1 %]> [% p.name FILTER html %]</option> [% END %] - </select> - </label> + </select> </td> </tr> </table> @@ -203,23 +205,21 @@ function doOnSelectProduct(selectmode) { <table> <tr valign="bottom"> <th align="left"> - <a href="describecomponents.cgi">Co<u>m</u>ponent</a>: + <label for="component" accesskey="m"><a href="describecomponents.cgi">Co<u>m</u>ponent</a></label>: </th> </tr> <tr valign="top"> [%# Can't use the select block here because 'component' is a toolkit reserved word - we use 'component_' instead. %] <td align="left"> - <label for="component" accesskey="m"> - <select name="component" id="component" - multiple="multiple" size="5"> + <select name="component" id="component" + multiple="multiple" size="5"> [% FOREACH c = component_ %] <option value="[% c FILTER html %]" [% " selected" IF lsearch(default.component, c) != -1 %]> [% c FILTER html %]</option> [% END %] - </select> - </label> + </select> </td> </tr> </table> @@ -227,12 +227,13 @@ function doOnSelectProduct(selectmode) { <td valign="top"> <table> <tr valign="bottom"> - <th align="left"><u>V</u>ersion:</th> + <th align="left"> + <label for="version">Version</label>: + </th> </tr> <tr valign="top"> [% PROCESS select sel = { name => 'version', - size => 5, - accesskey => 'v' } %] + size => 5 } %] </tr> </table> </td> @@ -240,12 +241,13 @@ function doOnSelectProduct(selectmode) { <td valign="top"> <table> <tr valign="bottom"> - <th align="left"><u>T</u>arget:</th> + <th align="left"> + <label for="target_milestone">Target</label>: + </th> </tr> <tr valign="top"> [% PROCESS select sel = { name => 'target_milestone', - size => 5, - accesskey => 't' } %] + size => 5 } %] </tr> </table> </td> @@ -267,7 +269,9 @@ function doOnSelectProduct(selectmode) { [% UNLESS field.name == 'status_whiteboard' AND NOT Param('usestatuswhiteboard') %] <tr> - <th align="right">[% field.description %]:</th> + <th align="right"> + <label for="[% field.name %]" accesskey="[% field.accesskey %]">[% field.description %]</label>: + </th> <td> <select name="[% field.name %]_type"> [% FOREACH qv = query_variants %] @@ -277,8 +281,7 @@ function doOnSelectProduct(selectmode) { [% END %] </select> </td> - <td><input name="[% field.name %]" size="40" - accesskey="[% field.accesskey %]" + <td><input name="[% field.name %]" id="[% field.name %]" size="40" value="[% default.${field.name}.0 FILTER html %]"> </td> <td></td> @@ -289,7 +292,7 @@ function doOnSelectProduct(selectmode) { [% IF have_keywords %] <tr> <th align="right"> - <a href="describekeywords.cgi"><u>K</u>eywords</a>: + <label for="keywords" accesskey="k"><a href="describekeywords.cgi"><u>K</u>eywords</a></label>: </th> <td> <select name="keywords_type"> @@ -305,7 +308,7 @@ function doOnSelectProduct(selectmode) { </select> </td> <td> - <input name="keywords" size="40" accesskey="k" + <input name="keywords" id="keywords" size="40" value="[% default.keywords.0 FILTER html %]"> </td> </tr> @@ -315,11 +318,11 @@ function doOnSelectProduct(selectmode) { [% IF UserInGroup(Param("timetrackinggroup")) %] <tr> <th align="right"> - Dead<u>l</u>ine: + <label for="deadlinefrom" accesskey="l">Dead<u>l</u>ine</label>: </th> <td> from - <input name="deadlinefrom" size="10" maxlength="10" accesskey="l"> + <input name="deadlinefrom" id="deadlinefrom" size="10" maxlength="10"> to <input name="deadlineto" size="10" maxlength="10"> </td> @@ -340,12 +343,13 @@ function doOnSelectProduct(selectmode) { <td> <table> <tr> - <th align="left">St<u>a</u>tus:</th> + <th align="left"> + <label for="bug_status" accesskey="a">St<u>a</u>tus</label>: + </th> </tr> <tr valign="top"> [% PROCESS select sel = { name => 'bug_status', - size => 7, - accesskey => 'a' } %] + size => 7 } %] </tr> </table> </td> @@ -353,61 +357,64 @@ function doOnSelectProduct(selectmode) { <table> <tr> <th align="left"> - <u>R</u>esolution: + <label for="resolution" accesskey="r"><u>R</u>esolution</label>: </th> </tr> <tr valign="top"> [% PROCESS select sel = { name => 'resolution', - size => 7, - accesskey => 'r' } %] + size => 7 } %] </tr> </table> </td> <td> <table> <tr> - <th align="left">S<u>e</u>verity:</th> + <th align="left"> + <label for="bug_severity">Severity</label>: + </th> </tr> <tr valign="top"> [% PROCESS select sel = { name => 'bug_severity', - size => 7, - accesskey => 'e' } %] + size => 7 }%] </tr> </table> </td> <td> <table> <tr> - <th align="left">Pr<u>i</u>ority:</th> + <th align="left"> + <label for="priority" accesskey="i">Pr<u>i</u>ority</label>: + </th> </tr> <tr valign="top"> [% PROCESS select sel = { name => 'priority', - size => 7, - accesskey => 'i' } %] + size => 7 } %] </tr> </table> </td> <td> <table> <tr> - <th align="left"><u>H</u>ardware:</th> + <th align="left"> + <label for="rep_platform" accesskey="h"><u>H</u>ardware</label>: + </th> </tr> <tr valign="top"> [% PROCESS select sel = { name => 'rep_platform', - size => 7, - accesskey => 'h' } %] + size => 7 } %] </tr> </table> </td> <td> <table> <tr> - <th align="left"><u>O</u>S:</th> + <th align="left"> + <label for="op_sys" accesskey="o"><u>O</u>S</label>: + </th> </tr> <tr valign="top"> [% PROCESS select sel = { name => 'op_sys', - size => 7, - accesskey => 'o' } %] + size => 7 } %] </tr> </table> </td> @@ -528,10 +535,11 @@ function doOnSelectProduct(selectmode) { <option value="include"[% " selected" IF default.bugidtype.0 == "include" %]>Only include</option> <option value="exclude"[% " selected" IF default.bugidtype.0 == "exclude" %]>Exclude</option> </select> - [% terms.bugs %] numbered: + <label for="bug_id">[% terms.bugs %] numbered</label>: </td> <td> - <input type="text" name="bug_id" value="[% default.bug_id.0 FILTER html %]" size="20"> + <input type="text" name="bug_id" id="bug_id" + value="[% default.bug_id.0 FILTER html %]" size="20"> </td> </tr> <tr> @@ -541,10 +549,12 @@ function doOnSelectProduct(selectmode) { [% IF Param('usevotes') %] <tr> <td align="right"> - Only [% terms.bugs %] with at least: + <label for="votes">Only [% terms.bugs %] with at least</label>: </td> <td> - <input name="votes" size="3" value="[% default.votes.0 FILTER html %]"> votes + <input name="votes" id="votes" size="3" + value="[% default.votes.0 FILTER html %]"> + votes </td> </tr> [% END %] @@ -562,15 +572,20 @@ function doOnSelectProduct(selectmode) { <dl class="bug_changes"> - <dt>Only [% terms.bugs %] changed between:</dt> + <dt> + <label for="chfieldfrom">Only [% terms.bugs %] changed between</label>: + </dt> <dd> - <input name="chfieldfrom" size="10" value="[% default.chfieldfrom.0 FILTER html %]"> + <input name="chfieldfrom" id="chfieldfrom" + size="10" value="[% default.chfieldfrom.0 FILTER html %]"> and <input name="chfieldto" size="10" value="[% default.chfieldto.0 FILTER html %]"> <br>(YYYY-MM-DD or relative dates) </dd> - <dt>where one or more of the following changed:</dt> + <dt> + <label for="chfield">where one or more of the following changed</label>: + </dt> <dd> - <select name="chfield" multiple="multiple" size="4"> + <select name="chfield" id="chfield" multiple="multiple" size="4"> [% FOREACH field = chfield %] <option value="[% field FILTER html %]" [% " selected" IF lsearch(default.chfield, field) != -1 %]> @@ -578,9 +593,10 @@ function doOnSelectProduct(selectmode) { [% END %] </select> </dd> - <dt>and the new value was:</dt> + <dt>and <label for="chfieldvalue">the new value was</label>:</dt> <dd> - <input name="chfieldvalue" size="20" value="[% default.chfieldvalue.0 FILTER html %]"> + <input name="chfieldvalue" id="chfieldvalue" + size="20" value="[% default.chfieldvalue.0 FILTER html %]"> </dd> </dl> @@ -595,9 +611,8 @@ function doOnSelectProduct(selectmode) { [% BLOCK select %] <td align="left"> - <label for="[% sel.name %]" accesskey="[% sel.accesskey %]"> - <select name="[% sel.name %]" id="[% sel.name %]" - multiple="multiple" size="[% sel.size %]"> + <select name="[% sel.name %]" id="[% sel.name %]" + multiple="multiple" size="[% sel.size %]"> [% FOREACH name = ${sel.name} %] <option value="[% name FILTER html %]" [% " selected" IF lsearch(default.${sel.name}, name) != -1 %]> @@ -609,7 +624,6 @@ function doOnSelectProduct(selectmode) { [% name FILTER html %]</option> [% END %] [% END %] - </select> - </label> + </select> </td> [% END %] diff --git a/template/en/default/search/knob.html.tmpl b/template/en/default/search/knob.html.tmpl index 68d279047..833e37f55 100644 --- a/template/en/default/search/knob.html.tmpl +++ b/template/en/default/search/knob.html.tmpl @@ -43,8 +43,8 @@ <input type="hidden" name="cmdtype" value="doit"> <p> - Sort results by: - <select name="order"> + <label for="order">Sort results by</label>: + <select name="order" id="order"> [% FOREACH order = orders %] <option value="[% order FILTER html %]" [% " selected" IF default.order.0 == order %]> |