Jquery 如何限制文件的总大小?
我找到了一个为单个文件设置限制的设置Jquery 如何限制文件的总大小?,jquery,fine-uploader,Jquery,Fine Uploader,我找到了一个为单个文件设置限制的设置 validation: { sizeLimit: 51200 // 50 kB = 50 * 1024 bytes } 如何实现如下验证:任何数字都可以上传到服务器,但总计必须小于5mb?我认为fine uploader没有这个选项(我不使用它)。如果您使用的是php,那么可以在php.ini文件中设置最大POST大小 既然你可以很容易地创建自己的并控制一切,为什么还要使用FinUploader呢?我是唯一一个想要控制一切的人吗?我认为fine u
validation: {
sizeLimit: 51200 // 50 kB = 50 * 1024 bytes
}
如何实现如下验证:任何数字都可以上传到服务器,但总计必须小于5mb?我认为fine uploader没有这个选项(我不使用它)。如果您使用的是php,那么可以在php.ini文件中设置最大POST大小
既然你可以很容易地创建自己的并控制一切,为什么还要使用FinUploader呢?我是唯一一个想要控制一切的人吗?我认为fine uploader没有这个选项(我不使用它)。如果您使用的是php,那么可以在php.ini文件中设置最大POST大小
既然你可以很容易地创建自己的并控制一切,为什么还要使用FinUploader呢?我是唯一一个想控制一切的人吗?最好的办法就是利用这个机会。在那里,您可以保持所有提交文件大小的运行总数。一旦达到最大值,就可以开始拒绝文件。例如:
var totalAllowedSize = 5000000,
totalSizeSoFar = 0;
callbacks: {
onValidate: function(data) {
if (totalSizeSoFar + data.size > totalAllowedSize) {
return false;
}
totalSizeSoFar += data.size;
}
}
做到这一点的最佳方法是利用。在那里,您可以保持所有提交文件大小的运行总数。一旦达到最大值,就可以开始拒绝文件。例如:
var totalAllowedSize = 5000000,
totalSizeSoFar = 0;
callbacks: {
onValidate: function(data) {
if (totalSizeSoFar + data.size > totalAllowedSize) {
return false;
}
totalSizeSoFar += data.size;
}
}
我只是想与大家分享我的最终解决方案“fineuploader”和jquery包装器
var totalAllowedSize = 10 * 1024 * 1024;
var totalSizeSoFar = 0;
var fuUrl = '[endpoint]';
$('#jquery-wrapped-fine-uploader').fineUploader({
request: {
endpoint: fuUrl
}
}).on('complete', function (event, id, name, response) {
__doPostBack('<%=btnUpdateClientAttachments.ClientID%>', null);
}).on("validate", function (event, obj) {
var fSize = obj[0].size;
if (totalSizeSoFar + fSize > totalAllowedSize) {
alert("Attachments attached to your email are over 10mb, please add link to your attachments instead");
return false;
}
totalSizeSoFar += fSize;
});
var totalAllowedSize=10*1024*1024;
var totalSizeSoFar=0;
var fuUrl='[endpoint]';
$('#jquery wrapped fine uploader')。fine uploader({
请求:{
端点:fuUrl
}
}).on('complete',函数(事件、id、名称、响应){
__doPostBack(“”,null);
}).on(“验证”,函数(事件,obj){
var fSize=obj[0]。大小;
如果(TotalSizeFar+fSize>totalAllowedSize){
警告(“附加到电子邮件的附件超过10mb,请改为添加到附件的链接”);
返回false;
}
totalSizeSoFar+=fSize;
});
PS再次感谢Ray for idea我只想与大家分享我使用jquery包装器的“fineuploader”最终解决方案
var totalAllowedSize = 10 * 1024 * 1024;
var totalSizeSoFar = 0;
var fuUrl = '[endpoint]';
$('#jquery-wrapped-fine-uploader').fineUploader({
request: {
endpoint: fuUrl
}
}).on('complete', function (event, id, name, response) {
__doPostBack('<%=btnUpdateClientAttachments.ClientID%>', null);
}).on("validate", function (event, obj) {
var fSize = obj[0].size;
if (totalSizeSoFar + fSize > totalAllowedSize) {
alert("Attachments attached to your email are over 10mb, please add link to your attachments instead");
return false;
}
totalSizeSoFar += fSize;
});
var totalAllowedSize=10*1024*1024;
var totalSizeSoFar=0;
var fuUrl='[endpoint]';
$('#jquery wrapped fine uploader')。fine uploader({
请求:{
端点:fuUrl
}
}).on('complete',函数(事件、id、名称、响应){
__doPostBack(“”,null);
}).on(“验证”,函数(事件,obj){
var fSize=obj[0]。大小;
如果(TotalSizeFar+fSize>totalAllowedSize){
警告(“附加到电子邮件的附件超过10mb,请改为添加到附件的链接”);
返回false;
}
totalSizeSoFar+=fSize;
});
PS再次感谢Ray的创意这并不是一个真正有用的答案。问题被标记为
fine uploader
,您或多或少地提供了您的意见作为答案。另外,我不同意创建自己的上传程序()很容易。然而,我确实给出了这个问题的解决方案。我以后不会把我的意见作为解决办法。而且,你的解决办法也没有用。您假设所有文件都是在一个请求中发送的-这不是真的。很抱歉试图提供帮助。下一次当我看到一个问题的主题不是我的专家(他们都是),我会忽略它。这就是你想要的吗?而不是提供错误的建议?是的,请注意这根本不是一个有用的答案。问题被标记为fine uploader
,您或多或少地提供了您的意见作为答案。另外,我不同意创建自己的上传程序()很容易。然而,我确实给出了这个问题的解决方案。我以后不会把我的意见作为解决办法。而且,你的解决办法也没有用。您假设所有文件都是在一个请求中发送的-这不是真的。很抱歉试图提供帮助。下一次当我看到一个问题的主题不是我的专家(他们都是),我会忽略它。这就是你想要的吗?而不是提供错误的建议?是的,请不要使用上的。来为您的案例提供事件处理程序。使用我的示例可能更有效。我仍然在使用ProjectFineUploaderV.3,没有使用“onValidate”函数编写代码。这就是为什么要重写它,而不需要在您的案例中使用.on
来提供事件处理程序。使用我的示例可能更有效。我仍然在使用ProjectFineUploaderV.3,没有使用“onValidate”函数编写代码。这就是为什么要重写一点