出现后,primefaces对话框消失

时间:2013-05-22 09:14:10

标签: jsf jsf-2 primefaces

我有一个commandButton和一个对话框。问题出现在对话框出现后,它会消失(1-2毫秒后)。我的命令按钮或其对话框问题是否有问题?

<p:commandButton id="showDetailsButton"
     title="Details"
     onclick="details.show();"
     process="@this"
     update=":tabView:myForm:myDialogId"                                         
     icon="ui-icon-search">                          
</p:commandButton>


<p:dialog id="myDialogId"
      header="Details"
      widgetVar="details"
      resizable="false"
      height="600"
      width="450"                  
      >
//some stuff
</p:dialog>

3 个答案:

答案 0 :(得分:8)

将onclick更改为oncomplete,现在它正常运行。

<p:commandButton id="showDetailsButton"
 title="Details"
 oncomplete="details.show();"
 process="@this"
 update=":tabView:myForm:myDialogId"                                         
 icon="ui-icon-search">                          

答案 1 :(得分:2)

默认情况下,<p:commandButton>呈现为

<button type="submit" ....> ... </button>

编辑: Iff 您已通过指定ajax禁用ajax=false行为请阅读以下评论。 结束编辑

因此会触发Post Back。因此,您的网页会向服务器发送POST请求并刷新。

顺便说一下,这里不需要PrimeFaces commandButton,只需使用

即可
<input type="button" onclick="details.show()" value="Details"/>

答案 2 :(得分:0)

删除进程并从命令按钮更新。他们刷新页面/部分。你不希望这样。