我的jsf表单中有<h:selectManyMenu>
和<h:selectBooleanCheckbox>
组件称为“全选”。单击<h:selectBooleanCheckbox>
后,<h:selectManyMenu>
中的所有项目都会被选中,我可以看到所有项目都被选中,但valueChangeListener
方法未被触发。我试图将listener="#{teamController.dummy}"
放在<f:ajax>
标记中但不起作用。任何解决方案?
<div style="margin-bottom: 10px; float: right;">
<h:selectBooleanCheckbox value="#{teamController.selectAll}"
valueChangeListener="#{teamController.selectAll}"> Select All
<f:ajax event="click" render="showList" />
</h:selectBooleanCheckbox>
</div>
<div style="margin: 0px;">
<p:message for="showList" styleClass="showListRequired">
</p:message>
<h:selectManyMenu id="showList" value="#{teamController.selectedList}"
style="height:200px; width: 280px;" immediate="true"
required="true" requiredMessage="#{msgs.showListRequired}"
valueChangeListener="#{teamController.dummy}">
<f:ajax event="valueChange" render="showList" />
<f:selectItems value="#{teamController.showList}" />
</h:selectManyMenu>
</div>