我有一个input file
控件,我可以上传any kind
个文件。
所以,我正在获取文件并storing in a FormData
并向我的控制器发送ajax call
。
它与Images和小.mp3文件一起工作正常。
但是当我上传.mp3文件超过5MB时,它将转到错误函数
我的代码是这样的:
document.getElementById('fileUploadControl').onchange = function () {
var data = new FormData();
var files = $("#fileUploadControl").get(0).files;
for (var i = 0; i < files.length; i++) {
data.append("UploadedImage" + i, files[i]);
}
var ajaxRequest = $.ajax({
url: '/Main/BroadcastFileUpload/',
data: data,
cache: false,
contentType: false,
processData: false,
type: "POST",
success: LoadImages,
error: OnLogoFail
});
ajaxRequest.done(function (xhr, textStatus) {
});
};
<input type="file" multiple id="fileUploadControl" style="width:0px;height:0px" />
任何人都可以帮我吗?
答案 0 :(得分:6)
是的......我找到了解决方案。谢谢@artm
我已更改了web.config中的maxRequestLength
<httpRuntime targetFramework="4.5" maxRequestLength="2097151" />
答案 1 :(得分:0)
这主要是因为服务器端限制。它们的默认大小仅用于安全问题。如果使用Tomcat,则可以在server.xml中配置连接器以设置maxPostSize。大多数默认值是2MB。
它适用于任何带有ASP,JSP或PHP的服务器。可能是配置文件可能有所不同。
答案 2 :(得分:0)
document.getElementById(&#39; fileUploadControl&#39;)。onchange = function(){
var data = new FormData();
var files = $("#fileUploadControl").get(0).files;
for (var i = 0; i < files.length; i++) {
data.append("UploadedImage" + i, files[i]);
}
var ajaxRequest = $.ajax({
url: '/Main/BroadcastFileUpload/',
data: data,
cache: false,
contentType: false,
processData: false,
type: "POST",
success: LoadImages,
error: OnLogoFail
});
ajaxRequest.done(function (xhr, textStatus) {
});
};