使用Jquery在Radio Clicked JQuery上显示ListShuttle后,ListShuttle中的选择被禁用

时间:2011-12-12 10:01:39

标签: jquery jsf components richfaces

我正在使用Jquery根据单选按钮值显示/隐藏ListShuttle组件。 虽然我能够显示/隐藏ListShuttle组件,但我无法在ListShuttle中选择任何值。我还明确指定了render =“true”但仍未成功。在使用JQuery之前,有一个带有radiobutton和一个在点击的单选按钮上呈现的内容。

对于Jquery,我删除了以及。之后,我无法在ListShuttle中选择任何值..

我在页面上还有一个ListShuttle。但是对于这个组件我没有做任何修改但是在使用JQuery后我也无法在这个listshuttle中选择SELECT值。这也使用和

代码段是:

    <h:selectOneRadio id="region"  border="0" label="Region Name" value="#{Bean.Region}" required="true" styleClass="intro" onchange="showRegionShuttle()">
<f:selectItem id="india" itemValue="All" itemLabel="All" />
<f:selectItem id="region" itemValue="Region" itemLabel="Region" />
</h:selectOneRadio> 
 </rich:panel>
</h:panelGroup>
<h:panelGroup/>

<rich:message  for="region"  styleClass="error_messages" showDetail="true"/>
<h:panelGroup/> 
</h:panelGrid>   
<h:panelGrid columns="6">
 <h:outputLabel value="Name *" id="regionLabel" styleClass="intro" escape="false" rendered="true"  /> 
<rich:spacer height="30" width="20"/> 
<h:outputLabel value=" : " styleClass="intro" id="colonLabel" escape="false" rendered="true" />
<h:panelGroup>  
<rich:listShuttle id="calListShuttle" sourceValue="#{Bean.regionSourceList}"  targetValue="#{Bean.targetList}" rendered="true" var="itemsRegion" fastOrderControlsVisible="false" orderControlsVisible="false" targetRequired="true" >

<rich:column >
<h:outputLabel value="#{itemsRegion}"/>
</rich:column >                                 
</rich:listShuttle>
</h:panelGroup>    
<h:panelGroup />
<h:panelGroup />
<rich:message  for="calListShuttle"  styleClass="error_messages" showDetail="true"/>
<h:panelGroup /> 
</h:panelGrid>
</rich:layoutPanel> 
 </rich:layout>
<rich:spacer height="20" width="18"></rich:spacer>

,JQuery代码是

function showRegionShuttle()
{
    jQuery("input:radio[@name='frmOffer\\:region']").click(function() { 
        var radioValue=jQuery("input[name='frmOffer\\:region']:checked").val();
        if(radioValue=="All")
        {
            jQuery("#frmOffer\\:regionLabel,#frmOffer\\:colonLabel,#frmOffer\\:calListShuttle").hide("fast");
        }
        else
        {
         jQuery("#frmOffer\\:regionLabel,#frmOffer\\:colonLabel,#frmOffer\\:calListShuttle").show("fast");
        }   
    });
}

可能有什么不对...... 为什么我无法在包含JQuery时在ListShuttle中选择一个值。

1 个答案:

答案 0 :(得分:0)

添加Rich Faces附带的JQuery脚本文件可以解决问题。同样在使用richFaces jquery文件时,很明显你需要使用JQuery Tag,否则Jquery不会触发......