2012-10-10 38 views
11

Internet Explorerでinput(type = "file")に問題があります(私は8でテストしました)。IE8 - 入力(type = "file")ファイルを取得

HTML

<input id="drop-file-files" class="drop-file-waiting" type="file"> 

JS(http://code.jquery.com/jquery-latest.min.js)

$('#drop-file-files').change(function(e){ 
    $.each(e.target.files, function(index, file){ 
     alert(file); 
    }); 
}); 

これは、Firefox、ChromeとSafariの戻りオブジェクトに完璧な仕事ファイルですが、e.targetの "files"は定義されていないため、IEはエラーを返します。 JavaScriptを使用してこの「ファイル」を取得するには、誰かが知っていますか?

EDITED:ドキュメントMSDN input type=file - のみfiles property

答えて

14

のInternet Explorer 8は、複数のファイルをサポートしていませんIE10で。これはalready discussed hereです。ファイル名は少なくともe.target.valueで取得できます。

+0

私はそれが複数のファイルをサポートしていないことを知っていますが、ファイルの情報はどのように入手できますか? –

+0

@ThyagoQuintas 'e.originalEvent.dataTransfer.files [0]'はあなたのために機能しますか? – Matthias

+0

いいえ、ファイルを選択するとdataTransferは空です。 –

関連する問題