FormData() は IE8 でサポートされていないため、IE8 で動作するように見える ASP Web アプリで jQuery File Upload を試してみることにしましたが、計画どおりに動作していません。
https://github.com/blueimp/jQuery-File-Uploadから取得したライブラリの最新バージョン (昨日更新) を使用しています。
スクリプト バンドルに次のファイル参照があります
"~/Scripts/jquery-file-upload/jquery.ui.widget.js",
"~/Scripts/jquery-file-upload/jquery.fileupload.js",
"~/Scripts/jquery-file-upload/jquery.fileupload-process.js",
"~/Scripts/jquery-file-upload/jquery.fileupload-ui.js",
"~/Scripts/jquery-file-upload/jquery.fileupload-validate.js",
"~/Scripts/jquery-file-upload/jquery.iframe-transport.js"
Twitter Bootstrap テーマと Knockout も使用しています。モーダルを開くボタンがクリックされると、次の関数がトリガーされ、ライブラリがモーダル内のフォームに初期化されます。
registerFileUpload: =>
$("#target-form").fileupload(
add: (e, data) =>
data.context = $("#save-target-btn").click( ->
data.submit()
)
done: (e, data) =>
$("#add-new-target-modal").modal('hide')
type: "POST"
multipart: true
url: "/route/to/save"
maxNumberOfFiles: 1
acceptFileTypes: /(\.|\/)(csv)$/i
)
.on('fileuploadadd', (e, data) ->
appendTarget = $("#add-new-target-modal .modal-body")
$.each(data.files, (index, file) ->
$("#add-new-target-modal .modal-body").append("<span>" + file.name + "</span>");
)
)
私の問題は、 maxNumberOfFiles と acceptFileTypes が適切に使用されていないように見えることです。つまり、アップロードする複数のファイルを選択できます (2 つのファイルを選択でき、それらを個別の要求としてアップロードします)、任意のファイル形式 (ファイルを選択できます) .txt 拡張子付き) ?
基本的に、ユーザーが .csv である 1 つのファイルのみをアップロードできるようにしたいだけです。