首先要說明的是這個會有警告。。。可以使用swfupload
<html> <head> <script>function getFileSize(){ var isIE = /msie/i.test(navigator.userAgent) && !window.opera; var fileSize = 0; if(isIE){ var filePath = target.value; var fileSystem = new ActiveXObject("Scripting.FileSystemObject");//會有警告,只能用swfupload var file = fileSystem.GetFile(filePath); fileSize = file.Size; }else{ fileSize = target.files[0].size; } alert(fileSize);}</script><script type="text/javascript"> //判斷檔案大小 function getFileSize(filePath) { if (filePath.value == null || filePath.value.length == 1) { return true; } var image = new Image(); image.dynsrc = filePath.value; if (image.fileSize > 5242880) { alert(filePath.value + " /r/n 大於5M!請選擇其它檔案"); filePath.outerHTML += ''; return false; } return true; } // 對應起刪除與輸入框 的聯絡 var idForFile = 0; function addFileInput(){ var rowCount = fileInput.rows.length; if(rowCount > 3){ alert("最大附件數為3個!"); }else{ var vtr = fileInput.insertRow(); var vtd1 = vtr.insertCell(); var vtd2 = vtr.insertCell(); vtd1.innerHTML = "<input type='file' name='upload' onkeypress='return false;' onpaste='return false;' ContentEditable='false' onchange='getFileSize(this)'/>"; vtd2.innerHTML = "<input type='button' value='刪除' onclick='fileInput.deleteRow(this.parentNode.parentNode.rowIndex)'>" } } </script> </head> <body> <!-- 這個table和ID不能少 因為方法裡有用到 結構應為: <table> <tr> <td> <input type="file" /> </td> <td> <input type="button"/> </td> </tr> </table> --> <table id="fileInput"> <tr> <td> <input type='file' name='upload' onkeypress='return false;' onpaste='return false;' ContentEditable='false' onchange='getFileSize(this)'/> </td> <td> <input type='button' value='刪除' onclick='fileInput.deleteRow(this.parentNode.parentNode.rowIndex)'> </td> <tr> </table> <input type="button" value="添加附件" onclick="addFileInput()" /> <br /> </body> </html>