• ベストアンサー

input TYPE="FILE"で取得した画像を表示

お世話になります。 htmlのタグにinput type="file"というのがありローカルの画像を選択できるエクスプローラが起動するというボタンなのですが、それで選択した画像ファイルをサーバ処理を行うことなくブラウザに表示させたいのです、こんなことが可能なのでしょうか? なにかサンプル等ご存知の方宜しくお願いします。

質問者が選んだベストアンサー

  • ベストアンサー
  • ryota2
  • ベストアンサー率43% (61/140)
回答No.1

サーバ処理を行うことなく ということはCGIを使わないと言うことですね。 <form action="./view.html" method=GET> <input type=file name=lf><input type=submit> </form> ---- view.html ---- <html> <script> if(window.location.search){ gd=window.location.search; //URLの?以降 gd=gd.substring(1); //?を除く gd=gd.replace(/\+/g," "); //+を" "に変換 ga=gd.split("&"); //&で分割 FormData=new Array(); for(i=0; i<ga.length; i++){ gb=ga[i].split("="); //=で分割 FormData[unescape(gb[0])]=unescape(gb[1]); //%nnを変換 } document.write("<img src='"+FormData['lf']+"'>"); //表示 } </script> </html> 日本語は対応していません。

takataka111
質問者

お礼

お世話になります、ryota2殿の回答通りで画像を表示させることが出来ました。 しかしNetScapeでは動作しないことが分かりました、原因はlf=のゲットパラメータをプルパスで取得してくれないことが原意でした、ryota2殿はどのように回避されているのでしょうか? お忙しいとは思いますが、宜しくおねがいします。

takataka111
質問者

補足

こんにちは、ご回答ありがとうございます。   上の"input type=file”等のHTMLはview.htmlに書くのですか? 画像を取得するHTMLと画像を表示する(View.html)との関係をもう少し具体的に教えていただけないでしょうか? 出来れば動いているサンプルを乗せていただけると非常に助かります。 宜しくお願いします。

その他の回答 (1)

  • the845t
  • ベストアンサー率33% (246/743)
回答No.2

でもサーバ処理しようしなかったら、 自分で選択したローカル画像を自分だけが見るってことになるのでは? 誰彼に見せられるわけではないので意味ないかと? アップロード前の確認ということでしたら、大いに意義がありますが。

takataka111
質問者

補足

ご回答ありがとうございます、お察しのとおりそのようなことに使う予定です、何かサンプルプログラム等ご存知ないでしょうか? 宜しくお願いします。

関連するQ&A