如何在不刷新页面的情况下触发和显示Flash消息?

时间:2012-08-03 20:43:48

标签: ruby-on-rails ruby ajax

我的应用程序控制器中有一个帮助器方法,用于检查何时创建了一个对象。基本上,如果对象总数发生变化,它会在页面加载时通过flash消息提醒您。这段代码工作正常,但我想要做的就是不需要重新加载。

如何做到这一点?我理解解决方案可能涉及AJAX,但我是AJAX和rails的新手,所以我不知道该怎么做。谢谢你的帮助!

1 个答案:

答案 0 :(得分:2)

<script type="text/javascript">
  var i = setInterval( "checkObjectCount()", 10000 );

  function checkObjectCount() {
    count = <%= @object_count %>;

    $.ajax({
      url: 'ajax/request_object_count',
      success: function(data) {
        if (data > count) {
          $('#alert_container').show();
          clearInterval(i);
        }
      }
    });
  }
</script>