| 導購 | 订阅 | 在线投稿
分享
 
 
 

關于javascript判斷文件大小

來源:互聯網  2008-08-15 05:15:04  評論

對于web開發人員來說文件上傳文件是經常遇到的,判斷文件大小也是不可缺少,在這裏主要介紹一下javascript判斷文件大小的幾種常見的方法。

第一種是應用ActiveX控件的實現,例如:

Javascript代碼

<script type="text/javascript">

function getFileSize(filePath)

{

var fso = new ActiveXObject("Scripting.FileSystemObject");

alert("文件大小爲:"+fso.GetFile(filePath).size);

}

</script>

<body>

<INPUT TYPE="file" NAME="file" SIZE="30" onchange="getFileSize(this.value);">

</body>

<script type="text/javascript">

function getFileSize(filePath)

{

var fso = new ActiveXObject("Scripting.FileSystemObject");

alert("文件大小爲:"+fso.GetFile(filePath).size);

}

</script>

<body>

<INPUT TYPE="file" NAME="file" SIZE="30" onchange="getFileSize(this.value);">

</body>

這種方法可以實現,也容易被開發人員想到,但是唯一不足之處是有安全提示,當然把文件名改爲.hta則會屏蔽掉安全提示,但很難被需求所取。不推薦,也不多說

下面主要談談另一種方式,在html標簽中有一個不爲一般開發人員「深」知的img標簽,先來說下他有的屬性:src,dynsrc,start,alt,controls,loop,loopdelay,hspace,vspace....還有一些常用的屬性就不列出來了,在這裏我們說一下"dynsrc"這個屬性:dynsrc可以用來插入各種多媒體,格式可以是Wav、Avi、AIFF、AU、MP3、Ra、Ram等等。url爲音頻或視頻文件及其路徑,可以是相對路徑或絕對路徑。

示例:<img dynsrc="xxxx.mp3">

這樣我們就可以根據dynsrc動態賦值任何類型文件的路徑,在javascript中根據Image對象本身的fileSize屬性來得到文件的大小。當然Image對象還有其他的幾個屬性,例如:fileCreatedDate、fileModifiedDate、fileSize、fileUpdatedDate、filters... , 代碼如下:

Javascript代碼

<script type="text/javascript">

function getFileSize(filePath)

{

var image=new Image();

image.dynsrc=filePath;

alert(image.fileSize);

}

</script>

<body>

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

alert(image.fileSize);

}

</script>

<body>

<INPUT TYPE="file" NAME="file" SIZE="30" onchange="getFileSize(this.value)">

</body>

經測試,得到文件大小,並未出現安全提示,推薦,沒的說

對于web開發人員來說文件上傳文件是經常遇到的,判斷文件大小也是不可缺少,在這裏主要介紹一下javascript判斷文件大小的幾種常見的方法。 第一種是應用ActiveX控件的實現,例如: Javascript代碼 <script type="text/javascript"> function getFileSize(filePath) { var fso = new ActiveXObject("Scripting.FileSystemObject"); alert("文件大小爲:"+fso.GetFile(filePath).size); } </script> <body> <INPUT TYPE="file" NAME="file" SIZE="30" onchange="getFileSize(this.value);"> </body> <script type="text/javascript"> function getFileSize(filePath) { var fso = new ActiveXObject("Scripting.FileSystemObject"); alert("文件大小爲:"+fso.GetFile(filePath).size); } </script> <body> <INPUT TYPE="file" NAME="file" SIZE="30" onchange="getFileSize(this.value);"> </body> 這種方法可以實現,也容易被開發人員想到,但是唯一不足之處是有安全提示,當然把文件名改爲.hta則會屏蔽掉安全提示,但很難被需求所取。不推薦,也不多說 下面主要談談另一種方式,在html標簽中有一個不爲一般開發人員「深」知的img標簽,先來說下他有的屬性:src,dynsrc,start,alt,controls,loop,loopdelay,hspace,vspace....還有一些常用的屬性就不列出來了,在這裏我們說一下"dynsrc"這個屬性:dynsrc可以用來插入各種多媒體,格式可以是Wav、Avi、AIFF、AU、MP3、Ra、Ram等等。url爲音頻或視頻文件及其路徑,可以是相對路徑或絕對路徑。 示例:<img dynsrc="xxxx.mp3"> 這樣我們就可以根據dynsrc動態賦值任何類型文件的路徑,在javascript中根據Image對象本身的fileSize屬性來得到文件的大小。當然Image對象還有其他的幾個屬性,例如:fileCreatedDate、fileModifiedDate、fileSize、fileUpdatedDate、filters... , 代碼如下: Javascript代碼 <script type="text/javascript"> function getFileSize(filePath) { var image=new Image(); image.dynsrc=filePath; alert(image.fileSize); } </script> <body> <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; alert(image.fileSize); } </script> <body> <INPUT TYPE="file" NAME="file" SIZE="30" onchange="getFileSize(this.value)"> </body> 經測試,得到文件大小,並未出現安全提示,推薦,沒的說
󰈣󰈤
 
 
 
>>返回首頁<<
 
 
 
 
 熱帖排行
 
王朝網路微信公眾號
微信掃碼關註本站公眾號 wangchaonetcn
 
 
靜靜地坐在廢墟上,四周的荒凉一望無際,忽然覺得,淒涼也很美
© 2005- 王朝網路 版權所有