【问题标题】:Rails make flash[] show on Javascript reloadRails 使 flash[] 在 Javascript 重新加载时显示
【发布时间】:2012-01-28 22:10:18
【问题描述】:

我有一个基于 Paperclip 上传和下载的应用程序。我的下载链接指向控制器中的下载操作,该操作被 Javascript 强制进入新窗口。但是,这种情况下的控制器也设置了一些 flash[] 消息。除非我按 Ctrl+R,否则它们不会出现在主窗口中。我尝试在该窗口上使用 javascript location.reload 复制此内容,但闪光灯没有显示。为什么 Javascript 重新加载与 Ctrl+R 不同?

【问题讨论】:

  • 你的意思是location.reload(),好像是调用函数?

标签: javascript ruby-on-rails ruby download reload


【解决方案1】:

在调用 .reload() 之前在控制器中设置 flash 消息

def controller_action
  flash[:notice] = "You have been successfully uploaded an image"
  render :js => 'window.location.reload()'
end

注意:渲染 :js reload() 正在客户端上根据初始 jquery $.post 请求对 dataType: 'script' 的 controller_action 进行评估。

【讨论】:

    猜你喜欢
    • 2010-12-07
    • 2011-08-25
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-09-14
    • 1970-01-01
    • 2022-01-15
    • 2013-07-06
    相关资源
    最近更新 更多