2013-07-31 32 views
0

调用的GetFile()嗨,我创建的文件上传类的话,在这我想提供上传文件大小 验证我写了下面的代码在Chrome和Firefox的罚款。无法从ActiveXObject的

$('#file').change(function() { 
fileSizeError = (this.files[0].size/(1024*1024) > 1) ? true:false;  
}); 

但这种代码不工作在IE,我想实现同样在以下 时尚

 var myFSO = new ActiveXObject("Scripting.FileSystemObject"); 
      var filePath = $('#file')[0].value; 
      var theFile = myFSO.getFile(filePath); 
      alert('Rajaram'); 
      var size = theFile.size; 
      alert(size + " bytes"); 

这里myproblem是myFSO.getFile()是notworking .the警报不是促使

+1

控制台中的任何错误?除了'newActiveXObject(..)',它应该是'new ActiveXObject(..)'? – Teemu

+0

SCRIPT53:文件未找到 – user2590163

+0

文件原始路径:C:\ Users \ durga_sambhani \ Desktop \ Test Data_1mb.docx,但filePath变量显示如下C:\ fakePath \ Test Data_1mb.docx – user2590163

回答

2

这里我的问题是myFSO.getFile()不工作

感谢天堂!否则,任何人浏览与IE浏览器的网站将是麻烦很多非常快,因为恶意网站会访问他们的文件。通过像FileSystemObject一个开放的API

访问本地文件系统根本不允许Internet区域的内容。 (使用一个不安全的IE脚本 ActiveX控件的唯一方法是把网页中的可信安全区域和低该区域的安全滑块

HTML5文件API是大幅更加锁定,只允许JavaScript限制访问用户选择的有限文件集。

+0

计算上传文件大小的任何替代解决方案感谢ü,但我怎么能找到文件的大小 – user2590163

+1

@ user2590163:你不能,不能在IE <10 –

+0

@EricLaw:大编辑,谢谢,我想我真的很匆忙。 –

-1

没有问题的话的GetFile()产生fakePath,试图从路径的文件名,并把那个给的GetFile()和他们的其余部分正在上传罚款

var myFSO = new ActiveXObject("Scripting.FileSystemObject"); 
var fileName = ($('#file')[0].value).split('\\'); 
var fileDtls = myFSO.getFile(fileName[fileName.length-1]); 
alert(fileDtls.size); 

警报显示文件大小

+0

谢谢这是有益的真的:) – ucefkh

相关问题