<h:form>
<h:selectOneMenu value="#{productBean.productName}">
<f:selectItem itemValue="" itemLabel="..." />
<f:selectItems value="#{productBean.pizza}" var="pizza" itemValue="#{pizza.name}" itemLabel="#{pizza.name}" />
<f:ajax listener="#{productBean.valueChanged(productBean.productName)}" render="pizzaResult pizzaButton" />
</h:selectOneMenu>
<h:commandButton value ="Dodaj do zamówienia" disabled="#{productBean.isDisabled}" id="pizzaButton" onclick="#{productBean.order}"/>
<h:outputText id="pizzaResult" value="#{productBean.message}" />
</h:form>
这是我的 JSF 表格。在某些情况下,我使用 valueChanged 侦听器使按钮无效,并且效果很好。但我不明白为什么它也会触发按钮 onclick。如何做一些使我只能在单击后才能使用按钮的事情?
我注意到当我删除禁用的选项时效果很好:/但是为什么当按钮启用时我无法触发操作?