綠色資源網:您身邊最放心的安全下載站! 最(zuì)新軟(ruǎn)件(jiàn)|熱(rè)門排行(háng)|軟件分類(lèi)|軟件專題|廠商大(dà)全

綠色資源網

技術教程(chéng)
您(nín)的位置:首頁網頁設計網頁特(tè)效 → JS 獲取上傳文件(jiàn)大小的方法

JS 獲取上(shàng)傳文件大(dà)小的方法

我要評論 2012/06/25 11:02:07 來源:綠色資(zī)源網 編(biān)輯:chithemodel.com [ ] 評論:0 點擊:857次

我們有(yǒu)時(shí)候在上(shàng)傳文件(jiàn)前要判斷文件的大小,通(tōng)常有以下兩種方式:

<!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="chithemodel.com提示:點擊(jī)查看"
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>

但是以上代碼有一(yī)個問題,就(jiù)是在給(gěi)image.dynsrc賦值的時候(hòu),要(yào)有文件的操作權(quán)限,換(huàn)句話說,IE7之後的(de)版本(běn)為了提高安(ān)全性不(bú)允(yǔn)許瀏覽器對文件(jiàn)進行操作,故以上代碼不實用(yòng)。

以下代碼通過(guò)調用ActiveX來進行文件(jiàn)的讀取,需(xū)要啟用ActiveX的部分(fèn)功能。

<!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

閱讀本文後您有什麽(me)感想? 已有(yǒu) 人給(gěi)出評價!

  • 0 歡(huān)迎(yíng)喜歡
  • 10 白癡
  • 74 拜托
  • 4 哇
  • 3 加(jiā)油
  • 1 鄙視(shì)