我有一个JSF页面。该框架是PrimeFaces。
这些图层会像顶栏,侧栏,主布局一样建立。
侧栏和顶部栏包含一个菜单。这两个菜单都位于<form>
中:
<p:commandLink action="#{bean.modify}" ajax="false">
<span>Modify</span>
</p:commandLink>
主布局还包含另一种形式的按钮形式t按钮包含一个confirmDialog):
<p:commandLink id="close" action="#{bean.close}" ajax="false" update="form">
<span>Close</span>
<p:confirm header="Lezárás" message="Are you sure close it?" icon="ui-icon-alert"/>
</p:commandLink>
如果我使用ajax = true,只需单击主布局中的按钮,confirmDialog就不会出现。 如果我使用ajax = false,则将显示确认对话框,但是该页面将在短时间内崩溃。首先,将在不使用CSS格式的情况下显示页面,然后将对CSS进行验证。
为什么会这样?这七个电话之间有什么区别?在一种情况下,为什么要渲染渲染,而在另一种情况下,为什么不会出现confirmDialogs?
更新:
我已经阅读了链接,但是我仍然不明白它为什么起作用。 我可能写错了问题。
有一个JSF页面:list.xhtml。这是一个commandLink
<p:commandLink action="#{bean.modify}" ajax="false">
<span>Modify</span>
</p:commandLink>
后备豆:
public String modify(){
return "edit.xhtml";
}
edit.xhtml带有带有confirmDialog的按钮:
<p:commandLink id="close" action="#{bean.close}" ajax="false" update="form">
<span>Close</span>
<p:confirm header="Lezárás" message="Are you sure close it?" icon="ui-icon-alert"/>
</p:commandLink>
如果我使用带有ajax = true的list.xhtm调用edit.html,则ConfirmDialog可以正常工作,但是页面呈现缓慢。
如果我调用ajax = false,则渲染速度很快,但确认对话框不起作用。
我不明白,因为它是另一页,所以不仅更新了一部分,而且更新了整个页面
答案 0 :(得分:0)
已解决
PrimeFaces中有一个错误。
https://github.com/primefaces/primefaces/commit/9f86efba16ead70f9db1194744d291a7f64acefb
我已经纠正了6.2版的源代码中的错误,此后一直运行良好。