大雑把な質問になりますが、思い当たることを挙げていただければと思います。
概要
ECシステムで領収書のpdfを作成しています。
おおよそ以下のようなイメージです。
領収書ボタンをクリックするとreceiptメソッドが発火します。
コントローラ
ruby
1def receipt 2 send_data ReceiptPdf.new(order).render, 3 filename: 'receipt.pdf', 4 type: 'application/pdf', 5 disposition: 'inline' 6end
app/pdfs/receipt_pdf.rb
ruby
1class ReceiptPdf < Prawn::Document 2 def initialize(order) 3 ... 4 end 5end
問題点
PCでは要件通りに、領収書ボタンをクリックすると、pdfがブラウザ上で表示されます。
新しいタブが開くのではなく、同じタブで開かれます。これは仕様通りです。
しかしデベロッパーツールでスマホモードに切り替えると、pdfは表示されず、ダウンロードもされず、
bodyタグの最下部にformタグが追加されるというよくわからない現象に遭遇しています。
この謎formタグのaction属性のURLは、PCで正常にpdfが表示された時のURLと同じでした。
railsは全く同じ成功ログを出力しているのでクライアントサイド(JS)に原因があるのではないかとなんとなく考えています。
また以下の手順を実施するとブラウザのタブのグルグル更新マークが止まらなくなります。
- PC表示にして領収書ボタンをクリック
- 領収書画面でスマホ表示に変更
- ブラウザの「戻る」を実行
- ブラウザの「進む」を実行
何か思いつくことがある方いらっしゃらないでしょうか。
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。