用Javascript判断上传文件大小

在实际的开发当中,上传文件是经常会遇到的,判断上传文件的大小也是不可缺少的,在服务器端判断文件的大小很方便,对于php来说都有相应的函数支持,在这里我们介绍在客户端用javascript判断文件大小的两种常见的方法。 

第一种方法:是应用ActiveX控件的实现,例如:
<script type="text/javascript"> 
function getFileSize(filePath){ 
var fso = new ActiveXObject("Scripting.FileSystemObject"); 
alert("文件大小为:"+fso.GetFile(filePath).size); 

</script> 
<body>
<INPUT TYPE="file" NAME="file" SIZE="30" οnchange="getFileSize(this.value);"> 
</body> 
这种方法可以实现,也容易被开发人员想到,但是唯一不足之处是有安全提示,当然把文件名改为.hta则会屏蔽掉安全提示,但很难被需求所取。不推荐,也不多说 .

第二种方法:在html标签中有一个不为一般开发人员“深”知的img标签,先来说下他有的属性:src,dynsrc,start,alt,controls,loop,loopdelay,hspace,vspace....还有一些常用的属性就不列出来了,在这里我们说一下"dynsrc"这个属性:dynsrc可以用来插入各种多媒体,格式可以是Wav、Avi、AIFF、AU、MP3、Ra、Ram等等。url为音频或视频文件及其路径,可以是相对路径或绝对路径。 
示例:<img dynsrc="xxxx.mp3"> 
这样我们就可以根据dynsrc动态赋值任何类型文件的路径,在javascript中根据Image对象本身的fileSize属性来得到文件的大小。当然Image对象还有其他的几个属性,例如:fileCreatedDate、fileModifiedDate、fileSize、fileUpdatedDate、filters... , 代码如下: 
<script type="text/javascript"> 
function getFileSize(filePath) { 
var image=new Image(); 
image.dynsrc=filePath; 
alert(image.fileSize); 

</script> 
<body> 
<INPUT TYPE="file" NAME="file" SIZE="30" οnchange="getFileSize(this.value)"> 
</body> 

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值