ajax=true和ajax=false之间的jsf不同



我有一个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,confirmationDialog会出现,但页面会在短时间内崩溃。首先,页面将在没有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调用edit.html和list.xhtm,那么confirmDialog可以工作,但页面呈现速度很慢。

如果我调用ajax=false,那么渲染很快,但confirmationDialog不起作用。

我不明白,因为这是另一个页面,所以不仅仅是它的一部分更新了,而是整个页面

已解决

PrimeFaces中有一个错误。

https://github.com/primefaces/primefaces/commit/9f86efba16ead70f9db1194744d291a7f64acefb

我已经纠正了源代码版本6.2中的错误,从那以后一直运行良好。

相关内容

  • 没有找到相关文章

最新更新