Xpages - 打开一个对话框几秒钟然后再次关闭它

时间:2014-10-14 12:24:05

标签: dialog xpages

我想打开一个应该可见几秒钟(可能是2秒)的对话框,然后自动关闭。 任何人都可以给我一个提示如何解决这个问题?我可以使用任何计时器功能吗?

4 个答案:

答案 0 :(得分:2)

您可以使用客户端功能setTimeout()来实现此目的。将以下CSJS代码插入按钮,打开对话框:

setTimeout(function() {
        ... client action to hide dialog or XSP.partialRefreshGet/Post ...
    }, 2 * 1000);

第一个参数是在超时时执行的函数,第二个参数是超时的毫秒数。

答案 1 :(得分:1)

我也在寻找类似的东西,请查看: https://frostillic.us/f.nsf/posts/a-control-for-dojox.widget.toaster

这使用以下组件并与dojo一起使用: http://livedocs.dojotoolkit.org/dojox/widget/Toaster

答案 2 :(得分:0)

从UX点来看,使用弹出窗口并不是一个好主意。尝试使用标准的Dojo组件Toaster。

http://dojotoolkit.org/reference-guide/1.10/dojox/widget/Toaster.html#dojox-widget-toaster https://frostillic.us/f.nsf/posts/AA9764E10494D4E585257A7000425672

答案 3 :(得分:0)

你可以使用Knut Hermann的解决方案,但你应该插入一个clearTimeout()函数来停止打开和关闭对话框

<xp:scriptBlock
id="scriptBlockRefresh">
<xp:this.value>
        <![CDATA[
            var myVar = setTimeout(function() {
                ... client action to hide dialog or XSP.partialRefreshGet/Post ...
            }, 2 * 1000)

            clearTimeout(myVar);
        ]]>
</xp:this.value>