Details
-
Type: Bug
-
Status: Closed
-
Priority: Major
-
Resolution: Fixed
-
Affects Version/s: 1.8.2-EE-GA_P02, 2.0.0
-
Fix Version/s: EE-1.8.2.GA_P03, 2.1-Beta, 3.0, EE-2.0.0.GA_P01
-
Component/s: ICE-Components
-
Labels:None
-
Environment:All
-
Assignee Priority:P2
-
Affects:Documentation (User Guide, Ref. Guide, etc.)
-
Workaround Exists:Yes
-
Workaround Description:Use the stock JSF selectOneRadio component as it does not render with a <fieldset> tag.
Description
The <ice:selectOneRadio> component is rendered as a <fieldset> tag. According to 508 compliance a <fieldset> tag needs to have a <legend> tag which is used by screen readers.
Customer request/suggestions:
It would be great if the selectOneRadio had a "legend" attribute we could set and get passed through as a <legend> tag inside the fieldset (or the label attribute could be used for this as it appears to currently do nothing). It should be noted we have applications using 1.8.2 and 2.0.0 and the issue exists in both.
Sample ICEFaces code:
<ice:selectOneRadio title="test title" label="test label" >
<f:selectItem itemLabel="test 1" itemValue="test 1"/>
<f:selectItem itemLabel="test 2" itemValue="test 2"/>
<f:selectItem itemLabel="test 4" itemValue="test 3"/>
</ice:selectOneRadio>
Rendered HTML:
<fieldset class="iceSelOneRb" id="j_idt11:j_idt73" title="test title">
<table border="0" cellpadding="0" cellspacing="0" class="iceSelOneRb">
<tr>
<td>
<input id="j_idt11:j_idt73:_1" name="j_idt11:j_idt73" onblur="setFocus('');" onfocus="setFocus(this.id);" onkeypress="Ice.util.radioCheckboxEnter(form,this,event);" type="radio" value="test 1" />
<label class="iceSelOneRb" for="j_idt11:j_idt73:_1">test 1</label>
</td>
<td>
<input id="j_idt11:j_idt73:_2" name="j_idt11:j_idt73" onblur="setFocus('');" onfocus="setFocus(this.id);" onkeypress="Ice.util.radioCheckboxEnter(form,this,event);" type="radio" value="test 2" />
<label class="iceSelOneRb" for="j_idt11:j_idt73:_2">test 2</label>
</td>
<td>
<input id="j_idt11:j_idt73:_3" name="j_idt11:j_idt73" onblur="setFocus('');" onfocus="setFocus(this.id);" onkeypress="Ice.util.radioCheckboxEnter(form,this,event);" type="radio" value="test 3" />
<label class="iceSelOneRb" for="j_idt11:j_idt73:_3">test 4</label>
</td>
</tr>
</table>
</fieldset>
Customer request/suggestions:
It would be great if the selectOneRadio had a "legend" attribute we could set and get passed through as a <legend> tag inside the fieldset (or the label attribute could be used for this as it appears to currently do nothing). It should be noted we have applications using 1.8.2 and 2.0.0 and the issue exists in both.
Sample ICEFaces code:
<ice:selectOneRadio title="test title" label="test label" >
<f:selectItem itemLabel="test 1" itemValue="test 1"/>
<f:selectItem itemLabel="test 2" itemValue="test 2"/>
<f:selectItem itemLabel="test 4" itemValue="test 3"/>
</ice:selectOneRadio>
Rendered HTML:
<fieldset class="iceSelOneRb" id="j_idt11:j_idt73" title="test title">
<table border="0" cellpadding="0" cellspacing="0" class="iceSelOneRb">
<tr>
<td>
<input id="j_idt11:j_idt73:_1" name="j_idt11:j_idt73" onblur="setFocus('');" onfocus="setFocus(this.id);" onkeypress="Ice.util.radioCheckboxEnter(form,this,event);" type="radio" value="test 1" />
<label class="iceSelOneRb" for="j_idt11:j_idt73:_1">test 1</label>
</td>
<td>
<input id="j_idt11:j_idt73:_2" name="j_idt11:j_idt73" onblur="setFocus('');" onfocus="setFocus(this.id);" onkeypress="Ice.util.radioCheckboxEnter(form,this,event);" type="radio" value="test 2" />
<label class="iceSelOneRb" for="j_idt11:j_idt73:_2">test 2</label>
</td>
<td>
<input id="j_idt11:j_idt73:_3" name="j_idt11:j_idt73" onblur="setFocus('');" onfocus="setFocus(this.id);" onkeypress="Ice.util.radioCheckboxEnter(form,this,event);" type="radio" value="test 3" />
<label class="iceSelOneRb" for="j_idt11:j_idt73:_3">test 4</label>
</td>
</tr>
</table>
</fieldset>
Activity
Arran Mccullough
created issue -
Arran Mccullough
made changes -
Field | Original Value | New Value |
---|---|---|
Salesforce Case | [5007000000GBnj2] |
Arran Mccullough
made changes -
Workaround Description | Use the stock JSF selectOneRadio component as it does not render with a <fieldset> tag. | |
Workaround Exists | [Yes] |
Ken Fyten
made changes -
Fix Version/s | 2.1 [ 10241 ] | |
Fix Version/s | 1.8.2-EE-GA_P03 [ 10251 ] | |
Affects | [Documentation (User Guide, Ref. Guide, etc.)] |
Ken Fyten
made changes -
Assignee Priority | P2 | |
Assignee | yip.ng [ yip.ng ] |
Ken Fyten
made changes -
Fix Version/s | 2.0.2 [ 10273 ] |
Ken Fyten
made changes -
Fix Version/s | EE-2.0.0.GA_P01 [ 10271 ] | |
Fix Version/s | 2.0.2 [ 10273 ] |
yip.ng
made changes -
Attachment | screenshot-01.png [ 13211 ] |
Repository | Revision | Date | User | Message |
ICEsoft Public SVN Repository | #24498 | Fri May 06 08:56:30 MDT 2011 | yip.ng | |
Files Changed | ||||
MODIFY
/icefaces/trunk/icefaces/core/src/com/icesoft/faces/renderkit/dom_html_basic/SelectManyCheckboxListRenderer.java
MODIFY /icefaces/trunk/icefaces/component-metadata/src/main/resources/conf/ice_properties/ice-selectOneRadio-props.xml MODIFY /icefaces/trunk/icefaces/component/src/com/icesoft/faces/component/ext/HtmlSelectOneRadio.java |
Repository | Revision | Date | User | Message |
ICEsoft Public SVN Repository | #24499 | Fri May 06 09:00:45 MDT 2011 | yip.ng | |
Files Changed | ||||
MODIFY
/icefaces2/trunk/icefaces/compat/component-metadata/src/main/resources/conf/ice_properties/ice-selectOneRadio-props.xml
MODIFY /icefaces2/trunk/icefaces/compat/components/src/main/java/com/icesoft/faces/component/ext/HtmlSelectOneRadio.java MODIFY /icefaces2/trunk/icefaces/compat/core/src/main/java/com/icesoft/faces/renderkit/dom_html_basic/SelectManyCheckboxListRenderer.java |
Repository | Revision | Date | User | Message |
ICEsoft Public SVN Repository | #24500 | Fri May 06 09:02:28 MDT 2011 | yip.ng | |
Files Changed | ||||
MODIFY
/icefaces2/branches/icefaces-2.0.x-maintenance/icefaces/compat/components/src/main/java/com/icesoft/faces/component/ext/HtmlSelectOneRadio.java
MODIFY /icefaces2/branches/icefaces-2.0.x-maintenance/icefaces/compat/core/src/main/java/com/icesoft/faces/renderkit/dom_html_basic/SelectManyCheckboxListRenderer.java MODIFY /icefaces2/branches/icefaces-2.0.x-maintenance/icefaces/compat/component-metadata/src/main/resources/conf/ice_properties/ice-selectOneRadio-props.xml |
yip.ng
made changes -
Status | Open [ 1 ] | Resolved [ 5 ] |
Resolution | Fixed [ 1 ] |
yip.ng
made changes -
Attachment | screenshot-02.png [ 13213 ] |
Repository | Revision | Date | User | Message |
ICEsoft Public SVN Repository | #24504 | Fri May 06 14:21:23 MDT 2011 | yip.ng | |
Files Changed | ||||
MODIFY
/icefaces/trunk/icefaces/component-metadata/src/main/resources/conf/ice_properties/ice-selectOneRadio-props.xml
|
Repository | Revision | Date | User | Message |
ICEsoft Public SVN Repository | #24505 | Fri May 06 14:22:26 MDT 2011 | yip.ng | |
Files Changed | ||||
MODIFY
/icefaces2/trunk/icefaces/compat/component-metadata/src/main/resources/conf/ice_properties/ice-selectOneRadio-props.xml
|
Repository | Revision | Date | User | Message |
ICEsoft Public SVN Repository | #24506 | Fri May 06 14:23:53 MDT 2011 | yip.ng | |
Files Changed | ||||
MODIFY
/icefaces2/branches/icefaces-2.0.x-maintenance/icefaces/compat/component-metadata/src/main/resources/conf/ice_properties/ice-selectOneRadio-props.xml
|
yip.ng
made changes -
Attachment | screenshot-02.png [ 13213 ] |
yip.ng
made changes -
Attachment | screenshot-02.png [ 13214 ] |
Ken Fyten
made changes -
Fix Version/s | 2.1-Beta [ 10291 ] | |
Fix Version/s | 2.1 [ 10241 ] |
Ken Fyten
made changes -
Fix Version/s | 3.0 [ 10241 ] |
Ken Fyten
made changes -
Status | Resolved [ 5 ] | Closed [ 6 ] |
Link for more information: http://warc.calpoly.edu/accessibility/508indepth/forms.html
Field Set and Legend Tags
Group together multiple form elements that are of related information using the fieldset tag, and label it with the legend tag. For example, group radio buttons or check boxes in the same category. Visually, this makes more sense to viewers, but also, when a screen reader goes through a form grouped with the fieldset and legend tags, it will read the legend followed by the form element within the grouping. The form below will be read as: Personal Information, First Name, Personal Information, Last Name, Hobbies, Sports, Music, Video Games, Reading.