Наиболее совместимое решение для загрузки нескольких файлов - PullRequest
2 голосов
/ 15 апреля 2011

Поскольку изначально IE7 (и некоторые другие браузеры, если быть точным, еще не проверил) не использует параметр <input multiple="" />, я хотел бы знать, что является ... наиболее совместимым (зависит от предпочтений, да , да) решение для одного поля ввода, загрузка нескольких файлов.

Было бы неплохо, если бы в решении не было JavaScript, но у меня почему-то возникает странное ощущение, что это невозможно - поправьте меня, если я ошибаюсь.

Заранее спасибо!

Ответы [ 2 ]

2 голосов
/ 15 апреля 2011

Наиболее совместимый с браузером чистый HTML-метод, позволяющий загружать несколько файлов, состоит в том, чтобы просто иметь несколько:

<input type="file" />

В качестве альтернативы вы можете использовать загрузчики Java или Flash - но они, вероятно, менее совместимы, чем JavaScript.

JavaScript, который изящно ухудшается , вероятно, ваш лучший выбор, посмотрите File-Uploader от Valum .Библиотека позволяет использовать:

  • Загрузка нескольких файлов через элемент формы загрузки, если браузер поддерживает это.
  • Перетаскивание загрузки файла, если браузер поддерживает это
  • Перейдите к элементу формы ввода HTML, если в браузере отключен JavaScript.

Рекомендуется разрабатывать для последних браузеров, поддерживая старые браузеры (ненаоборот).Если пользователи используют старые браузеры или не поддерживают JavaScript, загрузка нескольких файлов будет болезненной, независимо от того, что вы делаете.

1 голос
/ 15 апреля 2011

Наш мир еще не даровал нам такой инструмент / контроль ...

Но я думаю, что лучшее, что вы получите, если вы не хотите использовать какие-либо клиентские технологии (такие как javascript или Flash), это позволить пользователю загрузить файл с обычным POST, а затем каким-то образом (возможно, в своем сеансе) запомните файлы, загруженные пользователем, или просто сохраните их в базе данных по мере их поступления.

Таким образом, процесс будет:

  1. пользователь выбирает файл и загружает;
  2. вы отображаете изображение и спрашиваете, если они хотите загрузить другой файл;
  3. затем вы даете им возможность перейти к на следующей странице или выполните какое-либо действие.

Вероятно, не лучший способ приблизиться к этому, но он должен работать.

Опять же, если вы хотите использовать Javascript или Flash, существует множество сценариев, которые позволят вам загружать несколько файлов. Так, может быть, искать тот, который дает только один вход и заполняет список выбранных изображений?

Только мои 2 цента ...

...