JavaScript input type=file 获取文件大小及类型限制

本文介绍了一个简单的JavaScript函数用于验证用户上传的文件是否为图片格式,并检查文件大小。通过判断文件扩展名和读取文件大小来确保只有图片能够被正确上传。适用于使用HTML和JavaScript进行前端开发的场景。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

<input name="txtName" type="file" id="pic" onchange="loadImage(this)"/>

JavaScript代码:

function loadImage(img) {
            var filePath = img.value;
            var fileExt = filePath.substring(filePath.lastIndexOf("."))
                .toLowerCase();
 
            if (!checkFileExt(fileExt)) {
                alert("您上传的文件不是图片,请重新上传!");
                img.value = "";
                return;
            }
            if (img.files && img.files[0]) {
//                alert(img);
//                alert(img.files[0])
                alert('你选择的文件大小' + (img.files[0].size / 1024).toFixed(0) + "kb");
//                var xx = img.files[0];
//                for (var i in xx) {
//                    alert(xx[i])
//                }
            } else {
                img.select();
                var url = document.selection.createRange().text;
                try {
                    var fso = new ActiveXObject("Scripting.FileSystemObject");
                } catch (e) {
                    alert('如果你用的是ie8以下 请将安全级别调低!');
                }
                alert("文件大小为:" + (fso.GetFile(url).size / 1024).toFixed(0) + "kb");
            }
        } 
        function checkFileExt(ext) {
            if (!ext.match(/.jpg|.gif|.png|.bmp/i)) {
                return false;
            }
            return true;
        }

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值