2016-05-15 38 views
1

私は、PDFファイルではなくPDFファイルを開くか保存することを許可します。PDFファイルをダウンロードするのではなく、ブラウザでPDFファイルを開く

私たちは私がアンカーそれ自身でdownloadなどtype="application/pdf"を使用しようとしたが、それが動作しないシンプルなアンカータグ

<a href="pdf/pdf-file1.pdf" > View PDF </a>

があるとしましょう。

私は、ファイルの後ろにC#のコードを使用して開くためにPDFファイルを強制することができますが、私は5

+0

非常に、非常に、非常に良い理由がない限り、PDFを処理してユーザーに表示する方法を残すべきです。ブラウザにドキュメントを表示することが重要な場合は、ドキュメントをサーバー側で表示することで強制的にドキュメントを表示できます。 –

+0

私はデフォルト動作を気にしませんが、それはクライアント要求です。ちょうどそれがHTMLだけを使用して行うことができるかどうかを知りたがりました。私はHTTP Handlerを使ってコードの背後からそれを行うこともできます。 – Learning

答えて

0

あなたは、このPDFファイルを自分でホスティングされていないHTMLで、それを行うためのシンプルなHTMLベースの方法があることを避けるためにしたいですか?その場合、アンカータグにtarget="_blank"を追加してみてください:

<a href="pdf/pdf-file1.pdf" target="_blank"> View PDF </a> 

そうでない場合は、IFRAME試してください:あなたがあなた自身のバックエンドからこのファイルを送信している場合、また

<iframe src="pdf/pdf-file1.pdf" 
style="width:600px; height:800px;" frameborder="0"></iframe> 

をするのContent-処分を設定あなたの応答にインラインで:

Content-Type: application/pdf 
Content-Disposition: inline; filename="pdf-file1.pdf" 
+0

はい、このpdfファイルは同じサーバーにあります。私は 'target =" _ blank "'以前には動作していませんでしたか? – Learning

+0

あなたの解決策の最後の部分をC#コードで追加するか、に。可能であればアンカータグから直接操作できるようにしたいのです – Learning

+0

アンカータグから100%の信頼性ではできません。ブラウザがダウンロードしたファイルの表示方法を決定するためです。最良の結果を得るためには、本当に 'content-disposition'サーバ側を変更する必要があります。 –

関連する問題