Prime Faces p:commandButton一旦禁用选项被添加,将停止发送actionListeners



我的p:commandButton停止发送actionListeners一旦我添加了disabled选项。为什么会发生这种情况?

我有一个p:selectOneListbox,需要在OK按钮启用之前选择一些东西:

<p:selectOneListbox value="#{FileSelectBean.fileNameSelected}">  
  <f:selectItems value="#{FileSelectBean.fileNames}" />
  <p:ajax update=":formFileSelect:okId" />
</p:selectOneListbox>  
我有一个OK按钮:
<p:commandButton id="okId" value="OK" 
    type="submit" update=":formEncryptionDialog" 
    actionListener="#{FileSelectBean.actionOk}" 
    oncomplete="dlgFileSelect.hide();"
    disabled="#{FileSelectBean.fileNameSelected.isEmpty()}">
</p:commandButton>

支持bean:

private String fileNameSelected = "";

没有disabled="#{FileSelectBean.fileNameSelected.isEmpty()}",一切正常。一旦我添加了这个,OK按钮被正确启用/禁用,但在按钮被单击后停止调用FileSelectBean.actionOk

出什么事了?

编辑:我已经删除了<p:ajax update=":formFileSelect:okId" />,我以其他方式刷新按钮,但它没有帮助。所以它似乎与selectOneListbox中的ajax无关。

试试这个:

<p:selectOneListbox id="primeOneListBox" value="#{FileSelectBean.fileNameSelected}">` 
     <f:selectItems value="#{FileSelectBean.fileNames}" />
     <p:ajax event="change" update=":formFileSelect:okId" process=":formFileSelect:primeOneListBox" />
</p:selectOneListbox>

检查fileNameSelected setter方法是否在选择

后被调用

相关内容

  • 没有找到相关文章

最新更新