APetrov.ruЗаписки о работе и жизни

AJAX-отправка файлов на сервер

Недавно столкнулся с проблемой закачки картинок AJAX’ом. Перепробовал массу способов. Самым лучшим оказался SWFupload. Из названия можно понять, что отправка файлов на сервер происходит с помощью Flash и JavaScript. Если клиент не поддерживает эти технологии, то ничто не мешает показывать ему input type file.

Из достоинств SWFupload

  1. Работает во всех адекватных браузерах.
  2. Имеет гибкий и хорошо документированный API.
  3. Позволяет задавать маски для разрешенных файлов (*.jpg).
  4. В диалоговом окне можно выбирать несколько файлов.

Комментарии

  1. Reshek

    Можно динамически создавать iFrame за пределами области видимости (left и top меньше нуля), в него переносить инпут файла, а вместо него, генерить новый такой-же. И сабмитить этот фрейм, у которого на onload будет стоять событие, которое вернёт содержимое которое получил фрейм с сервера. Проблема данного способа заключается в том, что приходится оригинальный инпут переносить в фрейм, в котором он и теряется в результате отправки. а новый инпут остаётся незаполненным…

  2. Sq.Piglet

    Тоже вариант.

RSS комментариев

Комментировать