2011-10-04 74 views

回答

1

兼容所有瀏覽器? - 無解

兼容火狐,Chrome,Safari,Opera或 - ?下面的腳本

document.getElementById("file_elem_id").files[0].size 

犯規工程與IE8(還沒有測試在IE9)

+0

它不會在Firefox 7工作,同時:( –

+0

[小提琴這裏(http://jsfiddle.net/9M2rL/) – anu

+0

我米用firefox 7及其工作在我之前的評論中檢查鏈接 – anu

0

讓你知道,jQuery的文件API是不支持IE-9或更低版本。在這些情況下,我們必須通過創建ActiveXObject來檢查文件大小,因爲這是處理系統文件以在上載前獲取文件大小的唯一方法。

但是,另一個問題是,像ActiveX需要安裝/啓用/在客戶機上的瀏覽器上正確配置,否則它不會被識別。因此,我有三種方式獲取文件大小: - 1)通過將整個文件傳輸到服務器並從那裏返回文件大小來獲取文件大小。 2)通過在客戶端使用Silverlight,Flash或其他類似的東西很容易找到。 3)當文件超過文件大小限制時,將文件以塊的形式上傳到服務器,然後向用戶返回消息。

jQuery中獲取文件大小(IE 10支撐,FF,鉻瀏覽器)

$('#fileInputID').change(function(){ 
     var file=this.files[0]; 
     alert(file.size||file.fileSize); 
    }) 

獲取使用AJAX文件大小,使只有HEAD請求:

var response = $.ajax({ 
type: "HEAD", 
url: fileurl,// file url on server 
success: function() { 
    alert("Size of file is " + request.getResponseHeader("Content-Length")); 
    } 
}); 

希望這將是很有幫助。

參考: - http://www.aspnetcodes.com/2012/07/example-to-get-file-size-before-upload.html