Ajax сообщение о прогрессе загрузки - только на стороне клиента

У меня есть форма, из которой пользователи могут выбрать сотни файлов для загрузки на мой сервер.

При отправке формы на сервер отправляется почтовый запрос, длина которого может достигать 100 с. Я хотел бы, чтобы пользователи видели индикатор выполнения, чтобы увидеть, сколько они загрузили.

Мой вопрос заключается в следующем: есть ли способ добиться этого только на стороне клиента JS? Я бы предпочел сделать это без вызова файла jsp или php на сервере.

Мы можем использовать ext.js, но не jquery.

Большое спасибо, Хью

1 ответ

Решение

Нет. Стандартный HTML <form> загружаемые файлы не отображают ход выполнения загрузки в JavaScript, поэтому сценарии выполнения загрузки должны:

  1. Есть какой-нибудь способ получить статус загрузки с сервера и периодически проверять это
  2. Используйте нестандартный метод отправки загрузки, такой как Flash или Java-приложение, или путем фрагментации загрузки в JavaScript

Некоторые браузеры (например, Google Chrome) ненавязчиво отображают ход выполнения <form> загрузить (например, в строке состояния), но многие этого не делают, и я не знаю, как извлечь эти данные из страницы.

Другие вопросы по тегам