Jsf 2 IE7中的ValueChangeEvent火灾&;IE8仅在第二次单击之后
以下是.xhtml页面中的代码:Jsf 2 IE7中的ValueChangeEvent火灾&;IE8仅在第二次单击之后,jsf-2,internet-explorer-8,internet-explorer-7,myfaces,Jsf 2,Internet Explorer 8,Internet Explorer 7,Myfaces,以下是.xhtml页面中的代码: <h:selectOneRadio valueChangeListener="#{searchModel.setSelectedSearchItem}" value="#{searchModel.selectedSearchItemName}" layout="pageDirection"> <f:selectItems value="#{searchModel.searchParametersNames}" var=
<h:selectOneRadio valueChangeListener="#{searchModel.setSelectedSearchItem}" value="#{searchModel.selectedSearchItemName}"
layout="pageDirection">
<f:selectItems value="#{searchModel.searchParametersNames}" var="item" itemValue="#{item}" />
<f:ajax execute="@this" render="searchPane messagesPane" />
</h:selectOneRadio>
它在Chrome、FF和IE9+中运行良好。IE7和IE8的问题在于,ValueChangeEvent不是在单击radioButton(第一次单击)后触发的,而是在我再次单击页面上的某个其他位置(第二次单击)后触发的。在IE7和IE8中第一次单击后,是否有可能触发ValueChangeEvent?解决了此问题。增加
onclick="this.blur()"
这里
现在事件在IE7和IE8中需要时触发 它在第一次单击之前是否设置了值?否。不要这样认为-如果我选择一个选项(当然是第二次单击),那么它将有一个值,但仍然只有在下一次第二次单击时才会触发事件。尝试在启动时设置一个值并再次检查:是否有效?否。仍然是IE7和IE8火灾事件,仅在再次单击任意位置后发生。
onclick="this.blur()"
<h:selectOneRadio valueChangeListener="#{searchModel.setSelectedSearchItem}" value="#{searchModel.selectedSearchItemName}"
layout="pageDirection" onclick="this.blur()">