<p:fieldset styleClass="weightTextBox">
<p:selectOneMenu id="detectionSelector" value="#{ngs.detectionMode}">
<f:selectItem itemValue="SYBR" itemLabel="SYBR" />
<f:selectItem itemValue="NONE" itemLabel="None" />
<f:selectItem itemValue="SYBR_GREEN" itemLabel="Sequencing" />
<f:selectItem itemValue="PROBE" itemLabel="Probe" />
<p:ajax event="change" update="@form" render="@form"/>
</p:selectOneMenu>
</p:fieldset>
我有多个选择项,而三个值NONE,SYBR,SYBR_GREEN具有相同的用法。 我想做的是
<ui:fragment rendered="#{ngs.detectionMode ne 'SYBR_GREEN' or ngs.detectionMode ne 'NONE' or ngs.detectionMode ne 'SYBR'}">
虽然这种方式有效但我需要所有3个选项。
<ui:fragment rendered="#{ngs.detectionMode ne 'SYBR_GREEN'}">
我尝试了多种方法,但都没有。
<ui:fragment rendered="#{(ngs.detectionMode ne 'SYBR_GREEN') or (ngs.detectionMode ne 'NONE') or (ngs.detectionMode ne 'SYBR')}">
<ui:fragment rendered="#{ngs.detectionMode ne 'SYBR_GREEN' or 'NONE' or 'SYBR'}">
答案 0 :(得分:0)
我认为您正在寻找在{strong>'PROBE'选项被选中时ui:fragment
仅>>呈现的标准。
在这种情况下,您需要定义exclusive条件(AND)和非包含条件(OR),例如失败的尝试。
所以,例如,而不是
<ui:fragment rendered="#{(ngs.detectionMode ne 'SYBR_GREEN') or (ngs.detectionMode ne 'NONE') or (ngs.detectionMode ne 'SYBR')}">
你应该使用
<ui:fragment rendered="#{(ngs.detectionMode ne 'SYBR_GREEN') and (ngs.detectionMode ne 'NONE') and (ngs.detectionMode ne 'SYBR')}">
另请注意,p:ajax
组件没有render
属性。