★HTML Living Standard リファレンス

私たちはカジノサイトを独自にレビューしています。当社のリンクを通じてサインアップすると、追加料金なしで当社に手数料が発生する場合があります。

<input type=file> …… 選択ファイルを表す
Internet Explorer
Microsoft Edge
Google Chrome
Safari
Firefox
Opera
広告



<input type=file>は、選択ファイルを表す際に使用します。

input要素のtype属性の値に file を指定すると、
要素の値は選択されたファイルのリストを表します。

各ファイルは、ファイル名、ファイルタイプ、ファイル本体で構成されます。

■属性

name属性
フォーム部品に名前をつけます。
multiple属性
複数の値を許可するかどうかを指定します。
accept属性
ファイルアップロードで予期されるファイルタイプのヒントを指定します。
どのファイルタイプが受け入れられるかのヒントをユーザーエージェントに提供します。
accept属性を指定する場合、カンマ( , )区切りで値を指定します。
値には以下の文字列を指定できます。

  • “audio/*” …… 音声ファイルが受け入れられることを示します。
  • “video/*” …… ビデオファイルが受け入れられることを示します。
  • “image/*” …… 画像ファイルが受け入れられることを示します。
  • パラメータのない有効なMIMEタイプ文字列 …… 指定されたタイプのファイルが受け入れられることを示します。
  • 拡張子 …… ドット( . )で始まる文字列で拡張子を指定すると、その拡張子を持つファイルが受け入れられることを示します。

指定する文字列の大文字と小文字は区別しません。
重複して同じ値を指定することはできません。

■使用例

multiple属性は、複数の値を許可するかどうかを指定します。
multiple属性が設定されていない限り、選択したファイルのリストには複数のファイルがあってはなりません。

以下のサンプルは、multiple属性の指定の有無による違いを示しています。
multiple属性を指定しなければ選択できるファイルはひとつだけですが、
multiple属性を指定すると選択できるファイルが複数になります。

HTMLソース

<p><label>ファイル(ひとつだけ): <input type=file name=ofile></label></p>
<p><label>ファイル(複数選択可): <input type=file name=mfile multiple></label></p>

↓↓↓

ブラウザ上の表示

■使用例

accept属性を指定すると、どのファイルタイプが受け入れられるかのヒントをユーザーエージェントに提供できます。
特定の形式のデータに制限したい場合には、MIMEタイプと対応する拡張子の両方を指定することが推奨されています。

以下のサンプルは、Microsoft WordドキュメントをOpen Document Formatファイルに変換するアプリケーションを想定しています。
Microsoft Wordドキュメントには、様々なMIMEタイプ、様々な拡張子の可能性があるため、それらをaccept属性の値にカンマ区切りで指定してします。

HTMLソース

<input type="file" accept=".doc,
 .docx,
 .xml,
 application/msword,
 application/vnd.openxmlformats-officedocument.wordprocessingml.document">

↓↓↓

ブラウザ上の表示

クライアントから受信したデータの扱い

クライアントから受信したデータは慎重に扱う必要があります。
ファイルの拡張子やMIMEタイプだけではデータを完全には判別できないため、
accept属性によるデータのチェックを無条件に信頼するべきではできません。

例えば、拡張子「.dat」を使用する形式は数え切れないほどありますし、
Microsoft Word文書でなくても拡張子「.doc」を付けることはできます。
また、多くのファイル形式には正式に登録されたMIMEタイプがなく、
実際には異なるMIMEタイプを使用してラベル付けされていることが少なくありません。

ユーザーに悪意が無く、ユーザーエージェントがaccept属性を完全にサポートしているとしても、
クライアントから受信したデータは、予期しない形式である可能性を考慮して扱う必要があります。

■関連項目

広告



山田 太郎
テック・リード
山田太郎は、ウェブ開発やグラフィックスプログラミングに10年以上の経験を持つテクノロジーの専門家です。特にHTML5 CanvasやJavaScript、インタラクティブメディアに精通しており、動的なユーザーインターフェースや最先端のウェブアプリケーションの開発に携わってきました。複雑な図形描画や画像操作、リアルタイムグラフィックスに関する知識が豊富で、ウェブ技術の限界を追求する開発者たちにとって頼りになる存在です。知識の共有に情熱を持ち、初心者からプロフェッショナルまで幅広く支援するため、技術フォーラムやブログにも積極的に貢献しています。

ギャンブルガイド もっと見る

カジノファインダー

どのカジノが自分に最適か分からないですか?

サインアップは必要なく、1 分以内に最適なブックメーカーを簡単に見つけることができます。
カジノを探す
Back
質問
Select one of the following options
{"is_any_tile":true}

どのカジノが自分に最適か分からないですか?

Back
Restart
やったー!
これはあなたの選択に基づいた最高のカジノです...
56 users signed up
もっと表示する