使用过Primefaces 4.0-SNAPSHOT的人可能已注意到以下警告。
将弃用ConfirmDialog的appendToBody属性 未来的版本。请使用appendTo =“@(body)”now
与Primefaces 4.0 RC1一起,我有这段代码。
<h:body>
<h:form prependId="true" id="form">
<p:confirmDialog id="confirmDialog"
widgetVar="confirmDeleteMultiple"
message="Message"
showEffect="true"
hideEffect="true"
header="Header"
severity="alert"
closeOnEscape="true"
appendTo="@(body)" <-----------------
closable="true">
<p:commandButton id="btnYes"
value="Yes"
process="@this"
oncomplete="confirmDeleteMultiple.hide()"/>
<p:commandButton id="btnNo"
value="No"
onclick="confirmDeleteMultiple.hide()"
type="button" />
</p:confirmDialog>
<p:commandButton oncomplete="confirmDeleteMultiple.show()"
update=":form:confirmDialog"
actionListener="#{testManagedBean.insert}"
ajax="true" type="submit" value="Submit"/>
</h:form>
</h:body>
单击页面上的唯一命令按钮时,会出现一个对话框,其中显示两个按钮。
按下任何这些按钮时,对话框消失,但背景不透明。只有在重新加载页面时,背景不透明度才会丢失。
为什么这个新版本会发生这种情况?有什么建议吗?在早期版本中,这很好。
答案 0 :(得分:1)
它与PrimeFaces Forum的确认对话框的showEffet
和hideEffect
属性相关联。
滥用效果属性,“true”不是有效值, 应该反弹,淡出... 4.x对错误的属性更严格 值