Mam formularz za pomocą ktorego użytkownik może do mojego systemu wprowadzać załączniki (dowolne pliki). Chciałbym uniemożliwić dodawanie zbyt dużych plików (np. można dodać plik nie większy niż 5MB). Zrobiłem walidacje wielkości pliku po stronie serwera... i to działa fajnie. Ale nie chciałbym przesyłać dużych plików po sieci, dlatego dobrze byłoby sprawdzać wielkość pliku już po stronie klienta, zanim jeszcze plik zostanie wysłany na serwer. I tu jest problem... Czy znacie jakieś rozwiązanie (w miare uniwersalne, działające nie tylko na IE) na walidacje wielkości pliku po stronie klienta?
Formularz wygląda mniej więcej tak:
Kod: Zaznacz cały
<html>
<script type="text/javascript">
<!--
function validate(form) {
// TODO
return true;
}
//-->
</script>
<body>
<form method="post" enctype="multipart/form-data" onsubmit="return validate(this)">
<input type="file" name="uploadFile" value=""/>
<br/>
<input type="submit" value="Zapisz"/>
</form>
</body>
</html>
Niby wg specyfikacji html, mozna by wykorzystać atrybut maxlength (dla input type='file'), ale jak sprawdziłem, przeglądarki go ignorują.