IE9でサポートされる必要があるajaxを使用してファイルをアップロードする必要があります。私は前述のようにFormDataを使用していたhere。IE9で動作するajaxを使用したファイル/ファイルアップロードの送信
var files = new FormData();
JQuery.each($('#file')[0].files, function (i, file) {
files.append('file', file);
});
$.ajax({
type: "POST",
url: '/url',
cache: false,
contentType: false,
processData: false,
data: files,
...
});
これはSafariとFirefoxで正常に動作しますが、いるFormDataはIE9でサポートされていないとして、IE9に失敗します。私のコードは次のようになります。
data: $('#file')[0].files[0]
contentType: 'multipart/form-data'
をデータをURLエンコード形式で送信され、Java側で解析できないので、これが失敗した:私はちょうど設定することにより、ファイルとして送信しようとしました。どのようにこれを解決するかについての助けや指針は非常に高く評価されます。私はすべてのブラウザで機能するものが必要です。
EDIT:通常はファイルが小さいため、アップロードプログレスバーは必要ありません。私は複数のファイルをアップロードする必要はありません。私はただ一つのファイルのアップロードが必要です。
私は同様の質問をここで見つけました:http://stackoverflow.com/questions/2320069/jquery-ajax-file-upload –
'