2012-06-19 9 views
22

Powiel możliwe:
Limit file format when using <input type=“file”>?Jak sprawdzić poprawność w HTML5, aby zezwolić tylko w 'input type = "file"' JPG, GIF lub PNG?

muszę użyć atrybutu HTML5 pattern aby umożliwić tylko JPG, GIF i PNG w elemencie <input type="file">.

Obecnie mam ten wzór, ale to nie działa:

<input type="file" class="input-file" id="tbinstUploadFile0" name="tbinstUploadFile0" placeholder="Please insert an image file..." pattern="([^\s]+(\.(?i)(jpg|png|gif|bmp))$)"> 

Ten wzór regex nie jest zgodna z HTML5? Jak mogę przetestować poprawne wzory regex HTML5?

Pozdrawiam,

+2

Zobacz przyjąć w specyfikacji HTML5: http://dev.w3.org/html5/ spec/states-of-the-type-atrybut.html # attr-input-accept – Qtax

Odpowiedz

37

Spróbuj coś

<input type="file" name="my-image" id="image" accept="image/gif, image/jpeg, image/png" /> 

Kliknij here for the latest browser compatibility table

żywo demo here

Aby wybrać tylko pliki graficzne, można użyć tej accept="image/*"

<input type="file" name="my-image" id="image" accept="image/*" /> 

demo żywo here

Only gif, jpg and png will be shown, screen grab from Chrome version 44 Tylko gif, jpg i png zostaną pokazane, grab ekranu z wersji Chrome 44

+0

Nie jest obsługiwany w Firefoksie 12. Dziękuję za odpowiedź. –

+2

działa tylko w przeglądarce Chrome na koniec 2013 roku. – Rudy

+1

Jeśli dodaję to ('accept =" image/jpg, image/jpeg, image/png "') do tagu 'input', pokażę mi wszystkie typy plików w Firefoksie, gdzie tak jakbym po prostu trzymał 'accept =" image/* "', to działa. Chcę tylko, żeby użytkownik wybrał format 'jpg, jpeg' i' png'. – sahil

Powiązane problemy