JS 获取上传文件大小的方法
我们有时候在上传文件前要判断文件的大小,通常有以下两种方式:
<!doctype html public "-//w3c//dtd html 4.0 transitional//en">
< html>
< body>
< INPUT TYPE="file" NAME="file" SIZE="30" onchange="getFileSize(this)">
< INPUT TYPE="file" NAME="file" SIZE="30" onchange="getFileSize(this.value)">
< /body>
< script type="text/javascript">
function getFileSize(filePath)
{
var image=new Image();
image.dynsrc=filePath; title="downcc.com提示:点击查看"
alert(image.fileSize);
}
function getFileSize(fileObj)
{
var image=new Image();
image.dynsrc=fileObj.value;
var size = image.fileSize || fileObj.files[0].fileSize;
if(size > 100000){
alert(size);
}
}
< /script>
< /html>
但是以上代码有一个问题,就是在给image.dynsrc赋值的时候,要有文件的操作权限,换句话说,IE7之后的版本为了提高安全性不允许浏览器对文件进行操作,故以上代码不实用。
以下代码通过调用ActiveX来进行文件的读取,需要启用ActiveX的部分功能。
<!doctype html public "-//w3c//dtd html 4.0 transitional//en">
< html>
< script type="text/javascript">
function getFileSize(fileObj) {
if (document.all) {
window.oldOnError = window.onerror;
window.onerror = function(err) {
if (err.indexOf('utomation') != -1) {
alert('No access to the file permissions.');
return true;
}
else
return false;
};
var fso = new ActiveXObject('Scripting.FileSystemObject');
var file = fso.GetFile(fileName);
window.onerror = window.oldOnError;
return file.Size;
}
}
< /script>
< body>
< INPUT TYPE="file" NAME="file" SIZE="30" onchange="getFileSize(this)">
< /body>
< /html>
关键词:JS
相关阅读
- 12-15jsp是什么文件?jsp文件怎么打开?
- 08-12jsp是什么格式文件 如何打开jsp格式的文件
- 06-25JS实现刷新iframe的方法
- 06-25js判断是否是IE浏览器的几种方法
- 06-25js返回上一页方法示例
- 06-25js中文显示乱码或在页面显示乱码解决方法
- 10-31如何禁止IIS缓存静态文件(png、js、html)
- 09-08用JS防止网站被挂IFRAME木马
- 01-10div+css下js浮动对联广告不随屏幕滚动的解决方法
- 12-31js技巧之清除表单所有内容
阅读本文后您有什么感想? 已有 人给出评价!
用户评论
热门评论
最新评论
相关软件
热点图文
- 06-25js中文显示乱码或在页面显示乱码解决方法
- 06-25最简单的方法去掉iframe滚动条
- 06-25JS 获取上传文件大小的方法
- 12-31js技巧之清除表单所有内容
- 06-09网站图片延迟加载的实现
- 06-25JavaScript下拉菜单实例
- 06-25js判断是否是IE浏览器的几种方法
- 12-31W3C中使用的对联漂浮广告代码
- 06-25JavaScript日期格式转换
- 06-25js返回上一页方法示例