MVC3 アプリケーションに ajax ファイル アップローダーがあり、Firefox と chrome では問題なく動作しますが、IE9 と IE8 では動作しません。ファイルをアップロードすると、IE のサーバー側で間違ったファイル名が表示されます。
これが私のアップローダーコードです
<script type="text/javascript">
function InitializeUploader() {
Dname = [];
var uploader = new qq.FileUploader({
multiple: true,
element: document.getElementById('file-uploader'),
action: '@Url.Action("UploadDocument","Project")',
debug: true,
params: { id: $("#Id").val() },
onSubmit: function (id, fileName) {
},
onComplete: function (id, fileName, responseJSON) {
alert(responseJSON.fileName);
$("#DocumentName").val(responseJSON.fileName);
fileSize = responseJSON.size;
Dname.push(responseJSON.fileName);
type = responseJSON.type;
}
});
}
</script>
<form method="post" enctype="multipart/form-data" action="" style="margin-left: 4px;
margin-top: 0px;" id="documentUploadForm">
<div id="file-uploader">
<input type="file" id="uplodfile" />
<input class="button" type="button" value="Upload" id="UploadDocbtn" style="float: right;
width: 100px;" /></div>
</form>
サーバー側のアクション
[HttpPost]
public ActionResult UploadDocument(string qqfile, int id)
{
// code for saving File
}
qqfileパラメータでファイル名を指定する代わりに IE でこれを実行すると、 System.Web.HttpPostedFileWrapperのようなファイルが返され、ファイルも適切に保存されません。このブラウザの問題または IE が一部のスクリプトを防止していません。IEでajaxファイルアップローダーを使用してファイルを保存するにはどうすればよいですか?