Firefox バージョン 14.0.1 を使用しています。ファイルのみを表示するには、アップロード ファイル ウィンドウをフィルタリングする必要があり.txt
ます。
私のブラウザは、テキスト ファイルのみをサポートしていません(text/plain)
。この形式を指定することで、画像ファイルを制限できます("image/*")
。しかし、File Selector ウィンドウでテキスト ファイルのみをフィルタリングする必要があります。
ブラウザに問題はありますか?
Firefox バージョン 14.0.1 を使用しています。ファイルのみを表示するには、アップロード ファイル ウィンドウをフィルタリングする必要があり.txt
ます。
私のブラウザは、テキスト ファイルのみをサポートしていません(text/plain)
。この形式を指定することで、画像ファイルを制限できます("image/*")
。しかし、File Selector ウィンドウでテキスト ファイルのみをフィルタリングする必要があります。
ブラウザに問題はありますか?
これを行うだけで...
$("#form").submit(function(e) {
e.preventDefault();
var checkUploadFileExtension = $('input[type=file]').val().replace(/C:\\fakepath\\/i, '').split('.').pop();
if(checkUploadFileExtension === 'txt') {
alert("Success Uploaded!");
//Do Something
} else {
alert("Please upload text file only");
//Show error
}
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<form id="form" name="form" method="post">
<input name="file" id="file" type="file" accept="text/*" />
<button class="btn operations-btn btn-default" id="submit">Upload</button>
</form>
私の投稿に役立つことを願っています。ありがとうございました
したがって、input 要素の MDN リファレンスに accept=[MIME Type]
よると、Gecko では実装されておらず、現在は次のことしかできません。accept=image|audio|video
これを行う 1 つの方法は、asp.net-mvc コントローラーのタイプをサーバー側でチェックすることです。
しかし、より良い方法は、クライアントで JavaScript を使用して実行することです。次のようなものです。
<script>
function checkExt() {
if(document.mainForm.myfile.value.lastIndexOf(".txt")==-1) {
alert("Please upload only .txt extention file");
return false;
}
}
</script>
<form name="mainForm">
<input type="file" name="myfile" onchange="checkExt();"/>
</form>
ここで実行されていることを確認してください: http://jsfiddle.net/Egr9V/
JQuery を使用している場合は、この投稿で説明されているように、コードをより滑らかにするか、検証プラグインを使用できます: アップロード時に jQuery でファイル タイプを制限する方法は?