send_data - 在新的浏览器窗口中打开文件? [英] send_data - open file in new browser window?

查看:55
本文介绍了send_data - 在新的浏览器窗口中打开文件?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

#in 我的控制器(工作正常)order = Order.find(params[:id])url = order.receipt.file.url数据 = 打开(网址).读取发送数据(数据,类型:'application/pdf',文件名:appname-receipt#{order.id}",处置:'inline')

这需要一个存储在 S3 中的 PDF,并在当前窗口中呈现它.

只是想知道是否有人知道在新的浏览器窗口中打开它的巧妙方法?

解决方案

锚点 () 元素上的 target 属性可用于打开链接页面在新窗口中.

<a href="#" target="_blank">我在新窗口中打开.</a>

<块引用>

_blank:将响应加载到新的未命名 HTML4 窗口或 HTML5 浏览上下文中.https://developer.mozilla.org/en-US/docs/Web/HTML/Element/a

#in my controller (works just fine)

    order = Order.find(params[:id])
    url = order.receipt.file.url
    data = open(url).read
    send_data(data, type: 'application/pdf', filename: "appname-receipt#{order.id}", disposition: 'inline')

This takes a PDF stored in S3, and renders it just fine in the current window.

Just wondering if anyone knows a slick way to open it up in a new browser window?

解决方案

The target attribute on anchor (<a>) elements can be used to open linked pages in a new window.

<a href="#" target="_blank">I open in a new window.</a>

_blank: Load the response into a new unnamed HTML4 window or HTML5 browsing context. https://developer.mozilla.org/en-US/docs/Web/HTML/Element/a

这篇关于send_data - 在新的浏览器窗口中打开文件?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆