Chciałbym, aby jQuery ograniczyło pole wysyłania plików tylko do jpg / jpeg, png i gif. Robię PHP
już sprawdzanie zaplecza . Uruchamiam już przycisk przesyłania za pomocą JavaScript
funkcji, więc naprawdę muszę wiedzieć, jak sprawdzić typy plików przed przesłaniem lub ostrzeżeniem.
javascript
jquery
file-upload
file-type
Anthony
źródło
źródło
$("#my_upload_form").bind("submit", function() { // above check });
$('#file_field').change(function(){// above check});
$("#my_upload_form").bind("submit", function() { // above check });
powinien być teraz powiązany za pomocą$("#my_upload_form").submit(function() { // above check });
api.jquery.com/submit . możesz również zapobiec przesyłaniu formularza za pomocą$("#my_upload_form").submit(function(e) { // above check e.preventDefault(); });
".jpg"
np. Plik MS Word, FileUpload zaakceptowałby ten plik jako obraz. Myślę, że to nie w porządku.Żadna wtyczka nie jest potrzebna tylko do tego zadania. Ułożyłem to razem z kilku innych skryptów:
Sztuczka polega na tym, aby ustawić przycisk wysyłania na wyłączony, chyba że i do momentu wybrania prawidłowego typu pliku.
źródło
Możesz użyć wtyczki walidacji dla jQuery: http://docs.jquery.com/Plugins/Validation
Zdarza się, że ma regułę accept (), która robi dokładnie to, czego potrzebujesz: http://docs.jquery.com/Plugins/Validation/Methods/accept#extension
Zauważ, że kontrolowanie rozszerzenia pliku nie jest punktorem, ponieważ nie jest w żaden sposób powiązane z typem MIME pliku. Możesz więc mieć plik .png, który jest dokumentem Word, i .doc, który jest doskonale poprawnym obrazem png. Więc nie zapomnij zrobić więcej kontroli po stronie serwera;)
źródło
W przypadku front-endu jest całkiem wygodne umieszczenie atrybutu „ accept ”, jeśli używasz pola pliku.
Przykład:
Kilka ważnych uwag:
źródło
Nie chcesz sprawdzać raczej MIME niż jakiegokolwiek rozszerzenia, którego użytkownik kłamie? Jeśli tak, to jest mniej niż jedna linia:
źródło
w moim przypadku użyłem następujących kodów:
źródło
Próbuję napisać działający kod, testuję go i wszystko działa.
Zając to kod:
HTML:
JavaScript:
źródło
Ten kod działa dobrze, ale jedynym problemem jest to, że jeśli format pliku jest inny niż określone opcje, wyświetla komunikat ostrzegawczy, ale wyświetla nazwę pliku, podczas gdy powinien go zaniedbywać.
źródło
Ten przykład pozwala przesłać tylko obraz PNG.
HTML
JS
źródło
źródło
Jeśli masz do czynienia z przesyłaniem wielu plików (html 5), wziąłem najlepszy sugerowany komentarz i trochę go zmodyfikowałem:
źródło
źródło
źródło
Oto prosty kod do walidacji javascript, który po sprawdzeniu wyczyści plik wejściowy.
źródło