【发布时间】:2017-09-27 22:49:14
【问题描述】:
我有一个使用 Primefaces 的小型应用程序,JSF 允许用户在单击“编辑”按钮时编辑文本内容。单击编辑按钮时,页面上会显示一个带有“退出”按钮的面板,以退出编辑模式。这一切都很好。但是,当用户单击退出按钮时,面板应该再次隐藏。以下是相关代码:
<p:panel id="editModePanel" rendered="${editorBean.id>0}">
<p>Edit Mode: All changes will be saved to existing blog post</p>
<p:commandButton accesskey=""value="Exit"
update="@form"
action="#{editorBean.exitEditMode()}"
onclick="PF('block').show();"
oncomplete="PF('block').hide();"
styleClass="ui-priority-primary"
>
</p:commandButton>
</p:panel>
在呈现面板之前,当用户单击编辑按钮(未显示)时,editorBean.id 值被设置为一个数字,这会导致面板在表单提交时呈现。
当用户单击退出以离开编辑模式时,editorBe.id 设置为空,我已经验证了这种情况正在发生。但是,面板不会隐藏,它会保持渲染状态。
我尝试使用 onclick 来打开和关闭面板。但是,视图是 Sessionscoped,因此如果用户刷新页面或关闭浏览器窗口,我需要保持状态。
提前致谢!
【问题讨论】:
标签: jsf primefaces