Autor Zpráva
blahapet
Profil
Mám prosbu,
ve formuláři mám <INPUT type="file" multiple="multiple"> a potřebuju skrze javascript zkontrolovat velikost všech vybraných souborů ještě před odesláním formuláře. Mám následující skript:

function ZjistiVelikostVsechSouboru(){
    
    var fileInput = document.getElementById('fotografie');

    var files = fileInput.files;
    var file;    

    for (var i = 0; i < files.length; i++) {
    file += files[i]; 
    }
     
    return file.size;
    } 

Ale ve výstupu mi to vrátí "undefined". Nevíte prosím, kde mám chybku?
mimochodec
Profil
Snažíš se sčítat soubory. Sčítej jejich velikost.
blahapet
Profil
Omlouvám se, asi dělám něco blbě, teď ta funkce nevrátí vůbec nic...

function ZjistiVelikostVsechSouboru(){
    
    var fileInput = document.getElementById('fotografie');

    var files = fileInput.files;
    var file;    

    for (var i = 0; i < files.length; i++) {
    file += files.size[i]; 
    }
     
    return file;
    } 
Radek9
Profil
blahapet:
function ZjistiVelikostVsechSouboru() {
  var
  fileInput = document.getElementById('fotografie'),
  files = fileInput.files,
  totalSize = 0; // Počáteční hodnota
  
  for (var i = 0; i < files.length; ++i) {
    totalSize += files[i].size; // Přistupujeme nejprve k prvku kolekce a až potom k size
  }

  return totalSize;
}
blahapet
Profil
Jasně, už vím kde jsem dělal chybu. Na řádku č. 8 jsem to taky takto zkoušel jako ty přistupovat k prvku kolekce, taky to nic nevrátilo, protože mi nedocvaklo, že tam ještě m.j. musím mít před cyklem for():

totalSize = 0;

Ještě jednou díky moc!

Vaše odpověď

Mohlo by se hodit

Neumíte-li správně určit příčinu chyby, vkládejte odkazy na živé ukázky.
Užíváte-li nějakou cizí knihovnu, ukažte odpovídajícím, kde jste ji vzali.

Užitečné odkazy:

Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm:

0