file表單 唯讀 判斷檔案大小(javascript)

來源:互聯網
上載者:User

首先要說明的是這個會有警告。。。可以使用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>

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.