我想在 primefaces 的选择/取消选择复选框上显示确认对话框。我试过了
<p:selectBooleanCheckBox value="#{myBean.checkBoxValue}">
<p:confirm message="Are you sure?"/>
</p:selectBoooleanCheckBox>
但它不起作用,因为 selectBooleanCheckBox 不可确认。是否有解决此问题的解决方法?
最佳答案
一种方法是创建自己的 confirmDialog,例如
<p:confirmDialog widgetVar="myOwnConfirmDialog" message="Confirm ?">
<p:commandButton value = "Yes"
action = "#{myBean.checkConfirmedAction}"
oncomplete = "PF('myOwnConfirmDialog').hide()"/>
<p:commandButton value = "No"
action = "#{myBean.checkCancelledAction}"
oncomplete = "PF('checkConfirmwdgt').toggle(); PF('myOwnConfirmDialog').hide()"/>
</p:confirmDialog>
然后使用onchange事件打开确认对话框:
<p:selectBooleanCheckbox value="#{myBean.checkBoxValue}"
onchange="PF('myOwnConfirmDialog').show()"
widgetVar="checkConfirmwdgt">
</p:selectBooleanCheckbox>
编辑:
我在回答时犯了一个错字和一个错误。打字错误实际上是使用 <p:confirm>
里面<p:selectBooleanCheckbox>
(你是对的, selectBooleanCheckbox 是不可确认的。)
错误是 <p:selectBooleanCheckbox>
不会触发 onclick,但只会触发 onblur、onchange 和 onfocus。使用 onchange 会起作用。
关于jsf - Primefaces SelectBooleanCheckbox 确认,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36445379/