验证input file文本框上传文件时验证文件格式及文件内容大小

var isIE = /msie/i.test(navigator.userAgent) && !window.opera;
function fileChange(target, typeFile) {
    var name = target.name;
    var files = $('input[name="' + name + '"]').prop('files');
    var fileSize = 0;
    var filetypes = "";
    if (typeFile == 1) {
        filetypes = [".doc", ".docx", ".wps"];
    } else {
        filetypes = [".pdf"];
    }
    var filepath = target.value;
    var fileid = target.id;
    var fileheml = document.getElementById(fileid);
    var filemaxsize = 1024 * 200;//2M 
    if (filepath) {
        var isnext = false;
        var fileend = filepath.substring(filepath.lastIndexOf("."));
        if (filetypes && filetypes.length > 0) {
            for (var i = 0; i < filetypes.length; i++) {
                if (filetypes[i] == fileend) {
                    isnext = true;
                    break;
                }
            }
        }
        if (!isnext) {
            $.messager.show({    // show success message
                title: '提示',
                msg: '不接受此种文件类型!',
            });
            //layer.tips('不接受此种文件类型', '#bgfile', {
            //    tips: [1, '#dd514c'],
            //    shift: 0,
            //    time: 3000
            //});
            //alert("附件不存在,请重新输入!");
            //$("#bgfile").val('不接受此种文件类型');
            fileheml.outerHTML = fileheml.outerHTML;
            //fileheml.select();
            //document.selection.clear();
            //  document.getElementById(fileid).value = "";
            return false;
        }
    } else {
        return false;
    }
    if (isIE && !target.files) {
        var filePath = target.value;
        var fileSystem = new ActiveXObject("Scripting.FileSystemObject");
        if (!fileSystem.FileExists(filePath)) {
            $.messager.show({    // show success message
                title: '提示',
                msg: '附件不存在,请重新输入!',
            });
            fileheml.outerHTML = fileheml.outerHTML;
            return false;
        }
        var file = fileSystem.GetFile(filePath);
        fileSize = file.Size;
    } else {
        fileSize = target.files[0].size;
    }

    var size = fileSize / 1024;
    if (size > filemaxsize) {
        $.messager.show({    // show success message
            title: '提示',
            msg: "附件大小不能大于" + filemaxsize / 1024 + "M!",
        });
        fileheml.outerHTML = fileheml.outerHTML;
        return false;
    }
    if (size <= 0) {
        $.messager.show({    // show success message
            title: '提示',
            msg: "附件大小不能为0M!",
        });
        fileheml.outerHTML = fileheml.outerHTML;
        return false;
    }
}
 

你可能感兴趣的:(验证input file文本框上传文件时验证文件格式及文件内容大小)