我添加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" />
并以其他方式刷新按钮,但它没有帮助。因此,它与ajax
中的selectOneListbox
无关。
答案 0 :(得分:0)
试试这个:
<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方法