Jsf 未调用Primefaces命令按钮事件
在Primefaces中,按钮将调用prepareCreate方法,然后打开表单对话框。问题是,此方法从未被调用,因此对话框中的表单不会显示 命令按钮Jsf 未调用Primefaces命令按钮事件,jsf,primefaces,Jsf,Primefaces,在Primefaces中,按钮将调用prepareCreate方法,然后打开表单对话框。问题是,此方法从未被调用,因此对话框中的表单不会显示 命令按钮 <p:commandButton id="createButton1" value="#{bundle.Create}" actionListener="#{purchaseOrderController.prepareCreate}" update=":PurchaseOrderCreateForm11" oncomplete
<p:commandButton id="createButton1" value="#{bundle.Create}" actionListener="#{purchaseOrderController.prepareCreate}"
update=":PurchaseOrderCreateForm11" oncomplete="PF('PurchaseOrderCreateDialog11').show()"/>
什么版本的primefaces?另一件事,你的代码似乎没有错,我有同样的代码风格在我这边,它工作。因此,当您单击该按钮时,可能树上有一些无效组件,因此不会调用您的操作。查看日志。这是EL要处理的有效对象吗?
{bundle.Create}
?commandButton是否在表单中?oncomplete=“handleSubmit(args,'PurchaseOrderCreateDialog11');”?它是一个netbeans生成的代码段,只有在没有验证错误时才会隐藏对话框@user595234您能再显示一些呼叫页面吗?还有什么服务器,其他一切都正常吗?
<p:dialog id="PurchaseOrderCreateDlg11" widgetVar="PurchaseOrderCreateDialog11" modal="true" resizable="false" appendTo="@(body)" header="#{bundle.CreatePurchaseOrderTitle}">
<h:form id="PurchaseOrderCreateForm11">
<h:panelGroup id="display">
<p:panelGrid columns="2" rendered="#{purchaseOrderController.selected != null}">
<p:outputLabel value="#{bundle.CreatePurchaseOrderLabel_orderNum}" for="orderNum" />
<p:inputText id="orderNum" value="#{purchaseOrderController.selected.orderNum}" title="#{bundle.CreatePurchaseOrderTitle_orderNum}" required="true" requiredMessage="#{bundle.CreatePurchaseOrderRequiredMessage_orderNum}"/>
<p:outputLabel value="#{bundle.CreatePurchaseOrderLabel_quantity}" for="quantity" />
<p:inputText id="quantity" value="#{purchaseOrderController.selected.quantity}" title="#{bundle.CreatePurchaseOrderTitle_quantity}" />
<p:outputLabel value="#{bundle.CreatePurchaseOrderLabel_shippingCost}" for="shippingCost" />
<p:inputText id="shippingCost" value="#{purchaseOrderController.selected.shippingCost}" title="#{bundle.CreatePurchaseOrderTitle_shippingCost}" />
</p:panelGrid>
<p:commandButton actionListener="#{purchaseOrderController.create}" value="#{bundle.Save}" oncomplete="handleSubmit(args,'PurchaseOrderCreateDialog11');"/>
<p:commandButton value="#{bundle.Cancel}" onclick="PurchaseOrderCreateDialog11.hide()"/>
</h:panelGroup>
</h:form>
</p:dialog>
@Named("purchaseOrderController")
@SessionScoped
public class PurchaseOrderController implements Serializable {
public PurchaseOrder prepareCreate() {
System.out.println("Purchase order prepare create");
selected = new PurchaseOrder();
initializeEmbeddableKey();
return selected;
}
}