- <html>
- <head>
- <script type="text/javascript">
- var isIE = /msie/i.test(navigator.userAgent) && !window.opera;
- function fileChange(target) {
- 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 size = fileSize / 1024;
- if(size>10000){
- alert("附件不能大于10M");
- }
- }
- </script>
- </head>
- <body>
- <input type="file" name="contractFileName" style=" 500px;" onchange="fileChange(this);"/>
- </body>
- </html>
自己网上找资料 并测试 文件上传大小限制的一个例子,兼容ie6,ie7,ie8 ,Google Chrome,ff等浏览器,ie8上面在安全设置处设置一下就好了(工具 => Internet选项 => 安全 => Internet => 自定义级别 找到“将文件上载到服务器时包含本地目录路径”,设为“启用”即可)。
- function fileChange(target,id) {
- var fileSize = 0;
- if (isIE && !target.files) {
- var filePath = target.value;
- var fileSystem = new ActiveXObject("Scripting.FileSystemObject");
- if(!fileSystem.FileExists(filePath)){
- alert("附件不存在,请重新输入!");
- var file=document.getElementById(id);
- file.outerHTML=file.outerHTML;
- return;
- }
- var file = fileSystem.GetFile (filePath);
- fileSize = file.Size;
- } else {
- fileSize = target.files[0].size;
- }
- var size = fileSize / 1024;
- if(size>100000){
- alert("附件大小不能大于100M!");
- var file=document.getElementById(id);
- file.outerHTML=file.outerHTML
- }
- if(size<=0){
- alert("附件大小不能为0M!");
- var file=document.getElementById(id);
- file.outerHTML=file.outerHTML
- }
- }