上传文件的客户端检测(仅限于图片)

较大的文件的检测是比较棘手的,大文件在服务器端验证的话基本是不可行的,因为在验证是在文件上传结束才可以进行的,事实上,不作特殊处理大文件不可能完成上传的,IIS将会直接抛出异常,此异常你的程序是获取不到的。详见http://blog.joycode.com/saucer/archive/2004/03/16/16225.aspx

对于图片的文件大小限制可以如下处理:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<html>
<head>
      <title>Untitled</title>
      <script>
var img=null;
var maxfilesize = 1048576;
var filePath;
function checkimage()
{
      filePath = document.getElementById("FILE1").value;
      if(/^.+\.(gif|jpg|png)$/i.test(filePath)){
      img = new Image();
      img.style.display='none';
      img.attachEvent("onerror",ErrImgType);
      img.attachEvent("onreadystatechange",ErrImgBig);
      document.body.insertAdjacentElement("beforeend",img);
      img.src=filePath;
      }else{ErrImgType()}
}
function  ErrImgType(){
      upload.reset();
      alert("上传图片文件类型只能是jpg,png或gif!");
      return false;
}
function  ErrImgBig(){
      if  (img.fileSize>maxfilesize){
            upload.reset();
            alert("文件大小不能超过1M字节!");
            return false;
      }
}
      </script>
</head>

<body>
<FORM METHOD="post" id="upload" NAME="upload" ENCTYPE="multipart/form-data">
<input type="file" id="FILE1" name="FILE1" class="bg4" onChange="setTimeout('checkimage()',500)">
</form>
</body>
</html>

转载于:https://www.cnblogs.com/Truly/archive/2006/04/11/372272.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值