загрузка файла с использованием ajax - PullRequest
0 голосов
/ 11 октября 2010

Я ищу метод AJAX, который можно использовать для загрузки файла.Будет супер, если я найду функцию, которая использует Prototype + Script.acul.us

Ответы [ 4 ]

0 голосов
/ 13 октября 2010

Как уже отмечали другие, javascript не может асинхронно загружать файлы (в противном случае сайты с поддержкой javascript могут украсть любой файл с вашего жесткого диска). Лучшие подходы:

  • Флэш-загрузчик, как уже предлагалось
  • Или смоделировать Ajax-запрос, используя iframe

Подход iframe означает, что перезагружается iframe, а не страница, отображаемая вашим пользователям, так что для конечного пользователя опыт выглядит так, как будто это Ajax.

Если вы используете rails, что, как я понимаю, может быть связано с использованием прототипа и scriptaculous, есть плагин, который обрабатывает хитрые биты этого подхода для вас, который называется responseds_to_parent . Я сам реализовал это в приложении rails, но шаг 6 из этого блога выглядит как хороший пример того, как его использовать.

0 голосов
/ 11 октября 2010

нативной поддержки ajax для этого нет, однако Uploadify делает обходной путь, используя flash (использует jquery, но может использоваться с другими API, начиная с 2.0)

0 голосов
/ 11 октября 2010
0 голосов
/ 11 октября 2010

Загрузка файлов невозможна с использованием чистого Ajax, потому что Javascript не может получить прямой доступ к локальному файлу.

Такие инструменты, как плагин формы jQuery , обходят это путем создания невидимогоiframe на лету и отправка на него.

Вероятно, для этого также существует решение на основе прототипа или независимое от фреймворка решение.

...