私のページには、ファイルアップロードオブジェクトがあります。
<input type="file" ID="fileSelect" />
のページにファイルアップロードオブジェクトがあり、デスクトップに以下のエクセルファイルがあります。
1.ファイル1.xlsx
- ファイル1.xls
- ファイル.csv
ファイルのアップロードでは、.xlsx
, .xls
, & .csv
のファイルを ONLY 表示したい。
accept属性を使うと、以下のcontent-typesが拡張子
.xlsx&
.xlsに対応していることがわかりました。 GT;
accept`= application/vnd.openxmlformats-officedocument.spreadsheetml.sheet (.XLSX)
アプリケーション/vnd.ms-excel (.XLS)
しかし、ExcelのCSVファイルに適したコンテンツタイプが見つかりません。何か提案はありますか?
EXAMPLE: <
>。お恥ずかしい話ですが...。探していた解決策を見つけました!これ以上ないほどシンプルです。以下のコードを使って望みの結果を得ることができました。これが将来、誰かの役に立つことを願っています。 皆さん、ご協力ありがとうございました。
<input id="fileSelect" type="file" accept=".csv, application/vnd.openxmlformats-officedocument.spreadsheetml.sheet, application/vnd.ms-excel" />
CSV**ファイル(.csv)の場合は、
<input type="file" accept=".csv" />
Excelファイル97-2003** (.xls)の場合は、次のようにします:
<input type="file" accept="application/vnd.ms-excel" />
Excelファイル2007+** (.xlsx)の場合は、次のようになります:
<input type="file" accept="application/vnd.openxmlformats-officedocument.spreadsheetml.sheet" />
テキストファイル**(.txt)の場合は、以下のようになります。
<input type="file" accept="text/plain" />
画像ファイル**(.png/.jpg/etc)の場合は、次のように使用します:
<input type="file" accept="image/*" />
HTMLファイル** (.htm,.html)の場合は、次のように入力してください。
<input type="file" accept="text/html" />
動画ファイル**(.avi, .mpg, .mpeg, .mp4)の場合は、次のようにします。
<input type="file" accept="video/*" />
音声ファイル**(.mp3、.wavなど)の場合は、{{14404726}}を使用します。
<input type="file" accept="audio/*" />
PDFファイル**の場合、以下のようになります。
<input type="file" accept=".pdf" />
DEMOです。
說明書
NOTE:
ExcelのCSVファイル(.csv
)を表示する場合は、 NOTを使用しないでください。
アプリケーション/csv
特定のファイルタイプ*(例えば、WAV
やPDF
)を表示しようとしているのであれば、ほとんどの場合、これは機能するでしょう...
<input type="file" accept=".FILETYPE" />
Domのこの属性は非常に古く、私の知る限りでは最新のブラウザでは受け入れられていませんが、これに代わるものがあります。
<script type="text/javascript" language="javascript">
function checkfile(sender) {
var validExts = new Array(".xlsx", ".xls", ".csv");
var fileExt = sender.value;
fileExt = fileExt.substring(fileExt.lastIndexOf('.'));
if (validExts.indexOf(fileExt) < 0) {
alert("Invalid file selected, valid files are of " +
validExts.toString() + " types.");
return false;
}
else return true;
}
</script>
<input type="file" id="file" onchange="checkfile(this);" />
もちろん、あなたのニーズに応じてこのスクリプトを変更することができます。
accept属性でCSVのmime-typeにtext/comma-separated-values
を使用していますが、Operaでは問題なく動作しています。text/csv "を試してみましたが、うまくいきませんでした。
他のCSV用のMIMEタイプを提案してもうまくいかない場合があります。