#js 限制上传文件的大小

js 限制上传文件的大小

上传文件是一个网站经常用到的功能,在前端对文件的大小进行限制也是很有必要的。今天写了一段代码来监听input的change事件,来进行上传文件大小的控制

$("#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;
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值