アプリケーションでを使用する<input type="file">
と、デフォルトですべてのファイルを含むファイル選択ダイアログボックスが表示されます。
そのためのファイルタイプを指定する方法はありますか?たとえば、「。txt」ファイルのみを選択することはできますか?
アプリケーションでを使用する<input type="file">
と、デフォルトですべてのファイルを含むファイル選択ダイアログボックスが表示されます。
そのためのファイルタイプを指定する方法はありますか?たとえば、「。txt」ファイルのみを選択することはできますか?
これは本当に簡単です。accept
許可するファイル拡張子を定義する属性を追加するだけです。
<input type="file" accept="image/gif,image/jpeg">
この入力ではgifとjpegのみが許可されますが、コンマ区切りのリストはすべて許可できます。
参照: http ://www.cs.tut.fi/~jkorpela/forms/file.html#filter http://www.w3schools.com/tags/att_input_accept.asp
編集:確かに、ファイルを選択した後にファイルタイプをチェックすることで、javascriptでもこれを行うことができますが、ユーザーがファイルを選択する前にチェックしませんか?
検証時にファイルの種類を確認するか、on change イベントを使用してファイルの種類を特定できます。
<input name='upload' id='file' type='file' />
JavaScript部分
var file = document.getElementById('file');
if (file.value.test(/(\.txt)|(\.jpg)/gi)) { // case insensitive
// then validate
}
この場合、txt または jpg のみが受け入れられます。もちろん、JavaScript は簡単にバイパスできるため、サーバー側で再検証する必要があります。
はい、accept
属性で。
HTMLフォームに入力した内容に関係なく、古いゴミが投稿される可能性があるため、サーバー側で正しいファイルタイプが投稿されていることを確認してください.