2017-04-15 20 views
1

嘗試添加驗證我的文件是否被上傳的文件超過5MB,但它不警告,如果該文件是超過5MB,任何人都可以看到什麼是錯我的validaiton我的IF聲明?這是一個多文件上傳,工作正常,但驗證並不是多文件上傳validaiton JavaScript的if語句不工作

function makeProgress(number){ 
      var url = getRelativeURL("web/fileUpload"); 
      var formData = new FormData(); 
      formData.append('number', number); 
      fls = document.getElementById("attachmentFileUploadInput").files; //number of files... 
      console.log(fls); 
      for(j=0;j<fls.length;j++){ 
       if (fls.size > 5000000) //5MB 
      { 
        console.log('error'); 
        alert('file to big'); 
      } 
       else 
        { 
       formData.append('files[]', fls[j]); //note files[] not files 
       $.ajax({ 
        url : url, 
        data : formData, 
+1

fls是一個文件數組?所以,要獲得每個單獨文件的大小:'fls [j] .size' – yezzz

回答

1

您不檢查當前文件的大小。更改

if (fls.size > 5000000) //5MB 

if (fls[j].size > 5000000) //5MB 

一個去想。你不會在你的函數聲明j,因此它是在全球範圍內,可以打破的東西,因爲它可以在你的代碼的其他一些地方進行操作。你可以這樣聲明:

var j; 
for(j=0;j<fls.length;j++){