澳门威尼斯人登陆JQuery 获取验证上传文件大小代码

by admin on 2019年9月2日

代码如下:
在ie下,貌似要改安全设置中的【对为标记为可安全执行脚本的ActiveX空间初始化并执行】那项

我们在做文件上传时,为了实现异步上传的效果,一般会选择采用iframe的形式来进行文件的上传,但我们不能像ajax那样对服务端返回的数据进行处理,从而来进行文件大小以及文件样式的判断,所以我们一般也会想到使用js对上传的文件大小以及格式进行初步的判断,在服务端再进行一次判断(防止浏览器拒绝执行脚本文件)。
以下提供一种方法用js判断文件大小。

我们在做文件上传时,为了实现异步上传的效果,一般会选择采用iframe的形式来进行文件的上传,但我们不能像ajax那样对服务端返回的数据进行处理,从而来进行文件大小以及文件样式的判断,所以我们一般也会想到使用js对上传的文件大小以及格式进行初步的判断,在服务端再进行一次判断(防止浏览器拒绝执行脚本文件)。
以下提供一种方法用js判断文件大小。

本文章来能大家介绍JQuery
获取验证上传文件大小代码,以前我们都是直接使用js来验证上传文件大小但有时会不兼容,后来我找到一个不错的JQuery获取上传文件大小与实现文件大小验证函数,大家可参考。

复制代码 代码如下:

复制代码 代码如下:

复制代码 代码如下:

jquery

<html>
<head>
<script type=”text/javascript”>
var isIE = /msie/i.test(navigator.userAgent) && !window.opera;
function fileChange(target) {

var url = window.location.href, type =
url.substr(url.lastIndexOf(‘/’)+1);
// console.log(type);
var allowType = {
“.bmp”:1, “.png”:1, “.jpeg”:1, “.jpg”:1, “.gif”:1,
“.mp3”:2, “.wma”:2, “.wav”:2, “.amr”:2,
“.rm”:3, “.rmvb”:3, “.wmv”:3, “.avi”:3, “.mpg”:3, “.mpeg”:3, “.mp4”:3
};
var allowSize = {1:2097152, 2:5242880, 3:20971520};
var errMsg = {
“0” : ‘图片格式不正确<br/>’

var url = window.location.href, type =
url.substr(url.lastIndexOf(‘/’)+1);
// console.log(type);
var allowType = {
“.bmp”:1, “.png”:1, “.jpeg”:1, “.jpg”:1, “.gif”:1,
“.mp3”:2, “.wma”:2, “.wav”:2, “.amr”:2,
“.rm”:3, “.rmvb”:3, “.wmv”:3, “.avi”:3, “.mpg”:3, “.mpeg”:3, “.mp4”:3
};
var allowSize = {1:2097152, 2:5242880, 3:20971520};
var errMsg = {
“0” : ‘图片格式不正确<br/>’

 代码如下

var fileSize = 0;
if (isIE && !target.files) {
var filePath = target.value;
var fileSystem = new ActiveXObject(“Scripting.FileSystemObject”);
var file = fileSystem.GetFile (filePath);
fileSize = file.Size;
} else {
fileSize = target.files[0].size;
}
alert(“文件字节大小:”+fileSize);
var size = fileSize / 1024;
澳门威尼斯人登陆,if(size>10000){
alert(“附件不能大于10M”);

  • ‘音频格式不正确<br/>’
  • ‘视频格式不正确<br/>’,
    “1” : ‘图片格式不正确’,
    “2” : ‘音频格式不正确’,
    “3” : ‘视频格式不正确’
    };
    var errSizeMsg = {
    ‘1’:’图片文件小于2M’,
    ‘2’:’音频文件小于5M’,
    ‘3’:’视频文件小于20M’,
    }
    function checkFileType(filename, type){
    var ext = filename.substr(filename.lastIndexOf(“.”)).toLowerCase(),
    res = allowType[ext];
    if (type == 0) {
    return !!res;
    } else {
    return type == res;
    }
    }
    function checkFileSize(target, size){
    var isIE = /msie/i.test(navigator.userAgent) && !window.opera;
    var fileSize = 0;
    if (isIE && !target.files)
    {
    var filePath = target.value;
    var fileSystem = new ActiveXObject(“Scripting.FileSystemObject”);
    var file = fileSystem.GetFile (filePath);
    fileSize = file.Size;
    } else {
    fileSize = target.files[0].size;
    }
    // var fsize = fileSize / 1024*1024;
    if(parseInt(fsize) >= parseInt(size)){
    return false;
    }else{
    return true;
    }
    }
    function upload(obj){
    var filename = jQuery.trim(jQuery(‘#uploadFile’).val());
    if (!filename || filename == “”){ // 提交前的再次检测
    alert(‘选择需要上传的文件’);
    return false;
    }
    if (!checkFileType(filename, type)){
    alert(‘文件格式不正确’);
    return false;
    }
    var ext = filename.substr(filename.lastIndexOf(“.”)).toLowerCase();
    var res = allowType[ext];
    if(!checkFileSize(obj,allowSize[res])){
    alert(errSizeMsg[res]);
    return false;
    }
    //其他处理
    }
    //uploadFile为上传控件的id,obj为上传控件的本身(this)
  • ‘音频格式不正确<br/>’
  • ‘视频格式不正确<br/>’,
    “1” : ‘图片格式不正确’,
    “2” : ‘音频格式不正确’,
    “3” : ‘视频格式不正确’
    };
    var errSizeMsg = {
    ‘1’:’图片文件小于2M’,
    ‘2’:’音频文件小于5M’,
    ‘3’:’视频文件小于20M’,
    }
    function checkFileType(filename, type){
    var ext = filename.substr(filename.lastIndexOf(“.”)).toLowerCase(),
    res = allowType[ext];
    if (type == 0) {
    return !!res;
    } else {
    return type == res;
    }
    }
    function checkFileSize(target, size){
    var isIE = /msie/i.test(navigator.userAgent) && !window.opera;
    var fileSize = 0;
    if (isIE && !target.files)
    {
    var filePath = target.value;
    var fileSystem = new ActiveXObject(“Scripting.FileSystemObject”);
    var file = fileSystem.GetFile (filePath);
    fileSize = file.Size;
    } else {
    fileSize = target.files[0].size;
    }
    // var fsize = fileSize / 1024*1024;
    if(parseInt(fsize) >= parseInt(size)){
    return false;
    }else{
    return true;
    }
    }
    function upload(obj){
    var filename = jQuery.trim(jQuery(‘#uploadFile’).val());
    if (!filename || filename == “”){ // 提交前的再次检测
    alert(‘选择需要上传的文件’);
    return false;
    }
    if (!checkFileType(filename, type)){
    alert(‘文件格式不正确’);
    return false;
    }
    var ext = filename.substr(filename.lastIndexOf(“.”)).toLowerCase();
    var res = allowType[ext];
    if(!checkFileSize(obj,allowSize[res])){
    alert(errSizeMsg[res]);
    return false;
    }
    //其他处理
    }
    //uploadFile为上传控件的id,obj为上传控件的本身(this)

复制代码

}

您可能感兴趣的文章:

  • 真正好用的js验证上传文件大小的简单方法
  • 客户端js判断文件类型和文件大小即限制上传大小
  • js判断上传文件的类型和大小示例代码
  • 多个上传文件用js验证文件的格式和大小的方法(推荐)

/*
*
* Function to validate File size
*
**/

}
</script>
</head>
<body>

function findSize(field_id)
 {
           var fileInput = $(“#”+field_id)[0];
           byteSize  = fileInput.files[0].fileSize;
        return ( Math.ceil(byteSize / 1024) ); // Size returned in KB.
}

在ie下,貌似要改安全设置中的【对为标记为可安全执行脚本的ActiveX空间初始化并执行】那项
复制代码 代码如下: html head scr…

再把我以前用的js验证上传文件大小的代码也放上吧,有需要的选择参考。

 代码如下

复制代码

<!DOCTYPE html PUBLIC “-//W3C//DTD XHTML 1.0
Strict//EN””;
<html xmlns=”;
 <head>
 <meta name=”DEscription” contect=”my code demo” />
 <meta name=”Author”
contect=”[email protected]”
/>
 <meta http-equiv=”Content-Type” content=”text/html; charset=utf-8″
/>
 </head>
 <body>
  <img id=”tempimg” dynsrc=”” src=”” style=”display:none” />
  <input type=”file” name=”file” id=”fileuploade” size=”40″ />
  <input type=”button” name =”check” value=”checkfilesize”
onclick=”checkfile()”/>

 </body>
 <script type=”text/javascript”>
  var maxsize = 2*1024*1024;//2M
  var errMsg = “上传的附件文件不能超过2M!!!”;
  var tipMsg =
“您的浏览器暂不支持计算上传文件的大小,确保上传文件不要超过2M,建议使用IE、FireFox、Chrome浏览器。”;
  var  browserCfg = {};
  var ua = window.navigator.userAgent;
  if (ua.indexOf(“MSIE”)>=1){
   browserCfg.ie = true;
  }else if(ua.indexOf(“Firefox”)>=1){
   browserCfg.firefox = true;
  }else if(ua.indexOf(“Chrome”)>=1){
   browserCfg.chrome = true;
  }
  function checkfile(){
   try{
     var obj_file = document.getElementById(“fileuploade”);
     if(obj_file.value==””){
      alert(“请先选择上传文件”);
      return;
     }
     var filesize = 0;
     if(browserCfg.firefox || browserCfg.chrome ){
      filesize = obj_file.files[0].size;
     }else if(browserCfg.ie){
      var obj_img = document.getElementById(‘tempimg’);
      obj_img.dynsrc=obj_file.value;
      filesize = obj_img.fileSize;
     }else{
      alert(tipMsg);
       return;
     }
     if(filesize==-1){
      alert(tipMsg);
      return;
     }else if(filesize>maxsize){
      alert(errMsg);
      return;
    }else{
     alert(“文件大小符合要求”);
      return;
    }
   }catch(e){
    alert(e);
   }
  }
 </script>
</html>

获取验证上传文件大小代码,以前我们都是直接使用js来验证上传文件大小但有时会不兼容,后来我找到一个不错…

发表评论

电子邮件地址不会被公开。 必填项已用*标注

网站地图xml地图