Ajaxified h:selectBooleanCheckbox not working in IE8
----------------------------------------------------

                 Key: MYFACES-2869
                 URL: https://issues.apache.org/jira/browse/MYFACES-2869
             Project: MyFaces Core
          Issue Type: Bug
          Components: JSR-314
    Affects Versions: 2.0.1, 2.0.0, 2.0.2-SNAPSHOT
            Reporter: Michael Kurz
         Attachments: MYFACES-2869.zip

I have an ajaxified h:selectBooleanCheckbox like this:

<h:selectBooleanCheckbox valueChangeListener="#{controller.change}">
    <f:ajax render="textBox"/>
</h:selectBooleanCheckbox>

The value change listener toggles a boolean flag and the component with the id 
"textBox" is re-rendered. This works fine with FF, Safari and Chrome but not 
with IE8. The resaon for this is that the default onchange event is not working 
correctly in IE8. In IE8 onchange is not triggered before the component looses 
the focus. So I have to click the component and then again outside the 
component to hav the ajax request sent.

A workaround for this is to set the event to click manually:

<h:selectBooleanCheckbox valueChangeListener="#{controller.change}">
    <f:ajax render="textBox" event="click"/>
</h:selectBooleanCheckbox>

The question now is, should we change the default event for 
HtmlSelectBooleanCheckbox from change to click (or more precisely the mapping 
of valueChange from change to click)? I quickly scanned the spec but I found 
nothing helpful.

Mojarra seems to render an onclick attribute by default. But what is kind of 
funny - with event="click" on f:ajax it stops working...

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.

Reply via email to