Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jsf-2/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Jsf 2 如何在三秒后自动关闭PrimeFaces对话框_Jsf 2_Primefaces - Fatal编程技术网

Jsf 2 如何在三秒后自动关闭PrimeFaces对话框

Jsf 2 如何在三秒后自动关闭PrimeFaces对话框,jsf-2,primefaces,Jsf 2,Primefaces,我想只显示一个对话框三秒钟,然后自动关闭它并重定向到另一个faces页面。我怎么做 提前谢谢 对话框: <p:dialog id="dialog" header="Message" widgetVar="dlg1"> <h:outputText value="your account is being blocked......" /> </p:dialog> 对话框有两个属性onShow和onHide(您可以在Primefaces文档中引用),

我想只显示一个对话框三秒钟,然后自动关闭它并重定向到另一个faces页面。我怎么做

提前谢谢

对话框:

<p:dialog id="dialog" header="Message" widgetVar="dlg1">  
<h:outputText value="your account is being blocked......" />  
</p:dialog>  

对话框有两个属性
onShow
onHide
(您可以在Primefaces文档中引用),您可以使用timeout来执行此操作,您可以尝试:

<p:dialog widgetVar="dlg1" onShow="myFunction();" onHide="myStopFunction();"> </p:dialog>
<script>
var myVar;

function myFunction()
{
myVar=setTimeout(function(){ dlg1.hide()},3000);
}

function myStopFunction()
{
clearTimeout(myVar);
}
</script>

var-myVar;
函数myFunction()
{
myVar=setTimeout(函数(){dlg1.hide()},3000);
}
函数myStopFunction()
{
清除超时(myVar);
}

Ok谢谢,如果要在对话框关闭时重定向其他jsf页面?@user2683519您可以使用javascript,ref:代替dlg1.hide(),使用PF('dlg1').hide(),以便在PrimeFaces 6中工作