gpt4 book ai didi

jquery - Rails 3 - DIV 的定期刷新

转载 作者:行者123 更新时间:2023-12-01 07:23:48 26 4
gpt4 key购买 nike

我正在尝试使用 AJAX/Unobtrusive JavaScript/JQuery 刷新 div 的内容。

如果我创建一个“刷新”链接并为其指定数据远程属性,这很容易做到。

但是,我想使用 setInterval 函数而不是使用链接每 2 秒刷新一次。

这段代码应该演示我正在尝试做什么。当放入 application.js 时它不起作用,因为 ERB 没有被评估,但希望它能解释我的目标。

  setInterval(function(){
$("#scuttlebutt").html("<%= escape_javascript(render 'scuttlebutt') %>");
},2000);

在 Rails 3 中执行此操作的正确方法是什么?

(我正在使用 Rails 3.2.5)

最佳答案

好的,我明白你想做什么。我以前曾经这样做过,并且找到了一种简单的方法。

您仍然希望在 Controller 中调用远程方法的按钮,该按钮在浏览器中执行一些 javascript 以刷新该 DIV。我知道,我知道,你不想拥有它,但我出来了。我的页面上有一个,但我把它藏在一边,这样就没有人能找到它,链接如下:

:id => "refresh_button", :style => "position: absolute; left: -9999px" // Rails ERB notation

然后,我将其添加到同一个文件中,我认为该文件是 .html.erb 文件。

<script type="text/javascript">
function doSomething() {
$('#refresh-button').click();
}

setInterval('doSomething()',2000);
</script>

这将每 2 秒按下一次按钮,调用您的远程函数,就好像有人每两秒点击该按钮一样。我知道,这不是最干净的方法,但它在紧要关头效果很好,直到你能找到更强大的东西为你工作。尽管从技术上讲你可以使用它。

希望有帮助。

关于jquery - Rails 3 - DIV 的定期刷新,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11022627/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com