2015年6月10日水曜日

ブラウザでアップロードするファイルの情報

Information of the file to be uploaded in the browser

ブラウザでファイルをアップロードするとき、ファイルの情報が欲しいときがあります。
クライアント側でファイル名やファイルサイズをチェックしたい、というときにはこんな感じです。

// foo はファイルをアップロードするinput要素のid
var _fileName = $('#foo')[0].files[0].name;
var _fileSize = $('#foo')[0].files[0].size;

がしかし、FileAPIに対応していないブラウザでは、上記の方法ではダメみたいです。
でどうするかというと、

var _regex = /\/|\\//;
var _path = document.getElementById('foo').value.split(_regex);
var _fileName = _path.pop();

ファイル名は取得できました!でもファイルサイズは取得できないようです。。。 

↓FileAPI対応ブラウザはこちらを確認!
http://caniuse.com/#feat=fileapi

0 件のコメント:

コメントを投稿