如何使用javascript限制文件上传大小

JavaScript026

如何使用javascript限制文件上传大小,第1张

$("#ms_upload_file").change(function(){

//检验非空和文件大小

if($(this).val() !== '' &&checkSize(this)) {//其他操作

}

})/**

* 函数:检查上传文件大小

* 输入:input的js对象

* 输出:

**/function checkSize(input) {

var Sys = {} var flag var filesize = 0 //判断浏览器种类

if (navigator.userAgent.indexOf("MSIE") >0) {

Sys.ie=true

}if (navigator.userAgent.indexOf("Firefox")>0) {

Sys.firefox=true

}//获取文件大小

if (Sys.firefox) {

filesize = input.files[0].size

} else if (Sys.ie){var fileobject = new ActiveXObject ("Scripting.FileSystemObject")//获取上传文件的对象

var file = fileobject.GetFile (input.value)//获取上传的文件

filesize = file.Size//文件大小

}//判断是否符合要求

if (filesize / (1024 * 1024) <5 ) {

flag = true

} else {

alert("附件过大,建议不要超过5M!")

flag = false

}return flag

}

这样替换,项目要支持大文件上传功能,经过讨论,初步将文件上传大小控制在500M内,因此自己需要在项目中进行文件上传部分的调整和配置,自己将大小都以501M来进行限制。

第一步:

前端修改

由于项目使用的是BJUI前端框架,并没有使用框架本身的文件上传控件,而使用的基于jQuery的Uploadify文件上传组件,在项目使用的jslib项目中找到了BJUI框架集成jQuery Uploadify的部分,这部分代码封装在bjui-all.js文件中,

您好,我来为您解答:

这就是一个判断而已,放在你要调用的JS方法里面,执行的代码在下面的控件里面执行的。

if(document.all.imgx.fileSize>1024*1024)

{

alert('图片文件超过指定大小(1M),请重新上传附件')

window.event.returnValue=false

return false

}

就是在选择附件之后将这个文件传给img 在到JS方法里面判断

<asp:FileUpload ID="FileUpload2" runat="server" Width="353px" onchange="document.all.imgx.src=this.value"/><img src="" id="imgx" style="display:none">

转载,仅供参考。

如果我的回答没能帮助您,请继续追问。