2

使用敏捷工具包生成网格,我试图自动重新加载网格,但我不知道如何:/

我挖掘了 js() 函数,看到第一个参数是 $when 但是,如何设置间隔?

像按钮点击这样的事件重新加载是可以的,但我需要设置每 x 秒重新加载一次。

4

2 回答 2

1

好的,这里是完整的测试示例,你应该怎么做。

首先我必须承认,ATK4 没有在 univ() 库中添加 setInterval 和 clearInterval 函数,但已经有了 setTimeout。我添加了 setInterval 和 clearInterval 并在 Github (https://github.com/atk4/atk4/pull/173) 中提出了拉取请求。我希望 Romans 会接受这一点,但如果没有,那么您可以随时将这些函数添加到您自己的 JS 库中。

所以这里是代码:

$g = $this->add('Grid');
$this->js(true)->univ()->setInterval(
    $g->js()->reload()->_enclose()
,3000);

或者你甚至可以像这样执行多个独立的函数:

$this->js(true)->univ()->setInterval(
    $g->js(null,array(
        $g->js()->reload(),
        $g->js()->univ()->successMessage('Reloaded...')
    ))->_enclose()
,3000);

这里的关键部分是 ->_enclose() 方法,它将您的 JS 链转换为匿名 JS 函数。

于 2012-11-26T23:53:01.607 回答
0

Javascript代码:

setInterval("func()",1000);

这将func()每 1000 毫秒调用一次函数

于 2012-11-26T15:16:35.803 回答