- ベストアンサー
ホームページ作成 クライアント側のファイルを開く???
ホームページ作成 クライアント側のファイルを開く??? あるホームページを作成してます。 そこで行いたいのがクライアント側にあるPDFファイルを指定して開きたいです。 いろいろサイトを検索してみたのですが、よくわかりません。教えて下さい。 そもそも可能なのでしょうか? <input type="file" name="f_name1">でファイルを参照して開いたり <input type="text" name="f_name2">など直接ファイル名を入力したりして開きたいです。
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
javascriptでローカルなファイルを操作する事は、不可能なのですが、 ある制約の下で出来ます(下記のサンプルのように)。 肝は ・ActiveXコンポーネントを使って、WindowsのWScript.Shellを起動させ、 ファイルを実行(実際はpdfにWindows側で関連付けされたアプリが 起動されているのですが..)させています。 ・これはしごく単純な例で、実際はいろいろ考慮店があります。 ・当然IEしかだめで、しかもセキュリティオプションをクライアント 側で調整しておく必要があります。(具体的な調整の仕方はIEのバージョン毎に、 さらにPCの環境ごとに異なりますから、かなりIEの知識が必要です。よくしらん) <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" lang="ja-JP"> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> <title>Open Local PDF file</title> <script type="text/javascript" charset="Shift_JIS"> <!-- function open_file(){ var file_path=select_file.f_name1.value? select_file.f_name1.value:select_file.f_name2.value; if(file_path){ var app = new ActiveXObject("WScript.Shell"); app.Run(file_path); } } // --> </script> <body> <form action="javascript:void(0);" name="select_file"> ファイル名を入力<input type="text" name="f_name1" value="C:\Temp\旅費精算書.pdf"><br> ファイルを参照して開く<input type="file" name="f_name2"><br> <button onclick="open_file();">開く</button> </form> </body> </html>
その他の回答 (1)
- babu_baboo
- ベストアンサー率51% (268/525)
クライアント側がどんなのかしらんが、 そっちに、apacheみたいなものを、さりげなく入れて、呼び出す。 ちがうか・・・ やっぱり無視してくれ。