Выбор документа ещё не означает отправку
Клиент прикрепляет спецификацию к заявке на расчёт и нажимает кнопку отправки. Если форма не показывает судьбу вложения, он не знает, получил ли сотрудник документ или придётся присылать его заново. Ниже — пункты приёмки формы, которую открывают с компьютера и телефона. Они помогают связать видимые подсказки с результатом: заявка принята вместе с нужными файлами, а каждую ошибку можно исправить без потери остального ввода.
Разделить состояния файла
Выбранное имя рядом с кнопкой ещё не сообщает о приёме документа: перед подтверждением могут оставаться передача файла, обработка на сервере и привязка к обращению, которую клиент снаружи не видит. В описании File API на MDN отдельно рассматриваются выбранные файлы, сведения о них и отправка. Для заказчика это основание потребовать понятные состояния интерфейса: человек различает файл на своём устройстве и вложение, которое уже доступно принимающей стороне.
Успех подтверждает принимающий сервер.
- До выбора: рядом с полем названы назначение вложения и допустимые условия.
- После выбора: клиент видит имена документов и может убрать ошибочно выбранный.
- Во время передачи: форма объясняет, что происходит и можно ли продолжать ввод.
- При неудаче: сообщение относится к конкретному файлу, а остальные сведения сохраняются.
- После успеха: понятно, что принято обращение с вложениями, а не просто закрыто окно выбора.
Предпочтительнее показывать состояния рядом с полем, чем ограничиваться исчезающим уведомлением в углу экрана, потому что человек возвращается к документам после заполнения других полей и может не увидеть короткое сообщение. После отправки заявки нужен отдельный общий итог. В нём подтверждают состав обращения и следующий шаг обработки. Если один документ не принят, это видно именно здесь, а человек получает способ добавить замену к той же заявке. Иначе он может отправить весь запрос повторно только ради уверенности, что сотрудник увидит спецификацию.
Определить необходимость вложения
Если разговор можно начать по описанию задачи, разумнее принять обращение без документа и объяснить, когда он понадобится, потому что спецификация может находиться у коллеги клиента и запрет остановит полезный контакт. Обязательное вложение оставляют для сведений, без которых сотрудник действительно не сможет принять запрос на расчёт.
Условия до кнопки выбора
Самое удобное место для требований — перед действием, которое может закончиться ошибкой. Если клиент узнаёт ограничение только после долгой передачи, интерфейс уже потратил его время. Формат, размер и количество вложений стоит назвать простыми словами, а точные значения взять из согласованных возможностей сайта и принимающего отдела.
Общего лимита «для браузера» здесь нет: разрешённые объёмы определяет конкретная форма вместе с сервером и последующим хранением, поэтому подрядчик обязан показать одинаковое правило в подсказке, сообщении об ошибке и фактическом приёме документа.
Форматы и содержание
- Список расширений. Клиент видит, какие документы принимает форма: например, PDF и изображения, если именно они нужны для расчёта. Перечень совпадает с тем, что сотрудники способны открыть и обработать.
- Понятная цель. Подсказка объясняет, нужен ли чертёж, спецификация или фотография. Надпись «Приложите файл» оставляет человека выбирать содержание наугад.
- Скан и исходник. Когда для расчёта нужна редактируемая таблица, это сказано заранее. Снимок экрана с таблицей может оказаться читаемым, но непригодным для дальнейшей обработки.
- Архивы. Решение о них принимают отдельно: принимающему сотруднику потребуется безопасно открыть архив и разобраться с вложенными файлами. Разрешать его лишь ради обхода лимита количества неудобно.
Атрибут accept помогает браузеру предложить нужные типы файлов. По документации MDN он принимает расширения или MIME-типы — служебные обозначения формата — и не выполняет окончательную проверку допустимости. Пользователь иногда может изменить фильтр окна выбора. Поэтому ограничение подтверждает сервер, а подсказка лишь помогает избежать ошибочного выбора.
Размер и количество
Когда форма ограничивает размер одного документа и всего пакета, клиенту нужны оба значения: иначе несколько файлов, каждый из которых укладывается в видимый предел, могут неожиданно оказаться слишком тяжёлыми вместе. Разработчику передают пределы и правило подсчёта, затем испытывают файл у границы и набор из нескольких допустимых по отдельности вложений. В File API свойство size выражено в байтах. Если интерфейс показывает округлённые мегабайты, сообщение на границе остаётся понятным человеку и не спорит с собственной подсказкой. Пограничный документ включают в испытание. Исполнитель показывает, по какому значению принято решение, а подпись уточняют, если округление скрывает превышение.
Атрибут multiple разрешает выбрать несколько файлов. Это разрешение выбора, а не готовое правило бизнеса о допустимом количестве документов.
Конкретный предел лучше определять по реальным материалам отдела продаж: чертежам, сканам и фотографиям, с которыми сотрудники работают сейчас. Слишком маленький лимит вынудит клиентов сжимать нужные детали, слишком большой — увеличит время передачи и расходы на хранение. Для редкого тяжёлого документа полезнее согласованный дополнительный способ передачи, чем расширение лимита для любой заявки без оценки потребности.
Список вложений и управление им
После выбора документов человеку нужно увидеть нужные версии, убрать лишний файл и приложить замену, сохранив имя, телефон и описание задачи в остальных полях, потому что ошибка во вложении не отменяет уже написанного обращения. Такой путь испытывают и при выборе файлов за несколько подходов.
Что показывать в строке файла
Свойство name в File API содержит имя без полного пути. Свойство type может оказаться пустым, если браузер не определил формат. Эти особенности описаны в документации MDN о выбранных файлах. Из них следует практический вывод: не стоит обещать, что браузер всегда узнает документ по одному признаку, и не нужно выводить путь к папке пользователя ради идентификации вложения.
- Имя различимо. Длинные названия переносятся или доступны целиком, а значимая часть версии не исчезает без возможности просмотра.
- Размер виден. Клиент понимает, какой документ оказался тяжёлым, и может заменить именно его.
- Удаление адресное. Кнопка относится к конкретному вложению и не очищает соседние строки.
- Замена понятна. Повторный выбор не создаёт незаметную копию и не подменяет весь список без предупреждения.
- Одинаковые имена различимы. Если разрешены документы с совпадающим названием, сотрудник и клиент могут понять их состав по доступным сведениям.
Предпросмотр или только список
Для фотографий предпросмотр помогает заметить неверный снимок, а для сложного документа полезнее список с понятным именем и размером, если маленькая миниатюра занимает экран, но не позволяет разобрать содержание и версию. Полноценный редактор внутри формы нужен только при отдельной задаче, которую компания действительно решает до отправки.
Удаление должно работать с клавиатуры. Перетаскивание удобно как дополнение, но у человека остаётся обычная кнопка выбора, потому что на телефоне, с клавиатурой или при использовании вспомогательных средств этот путь может оказаться основным. Внешний вид кнопки и видимый фокус помогают понять, где сейчас находится действие. Отдельно испытывают возврат из системного окна выбора без добавления файла: прежние вложения и заполненные поля сохраняются.
Пауза, ошибка и повторная отправка
Передача может прерваться после выбора файла и даже после нажатия общей кнопки формы. В этой ситуации человеку нужен ответ о состоянии конкретного документа, а не общий текст «Что-то пошло не так». Чем точнее названы причина и следующий шаг, тем меньше оснований отправить то же обращение ещё раз вслепую.
Повтор может создать дубликат.
Сообщения, которые помогают действовать
- Формат не принят: указано имя документа и перечислены допустимые форматы. Человек понимает, какой файл заменить.
- Превышен размер: видны предел и размер выбранного вложения. Если ограничен весь пакет, это названо прямо.
- Передача прервалась: форма предлагает повтор для затронутого файла либо повтор отправки по описанному правилу, сохраняя введённые сведения.
- Обработка ещё идёт: интерфейс не выдаёт успех до получения результата, но объясняет задержку и возможное действие клиента.
- Документ отклонён после загрузки: клиент видит, что он не вошёл в заявку, и может приложить замену.
Ложное подтверждение хуже честной ошибки. Если сервер принял поля обращения, но потерял спецификацию, надпись «Всё отправлено» создаёт неверное ожидание расчёта, а выяснять пропажу придётся уже сотруднику. Предпочтительнее явно показать частичный результат и дать безопасно дополнить обращение, если именно такой сценарий поддерживает сайт. Когда отправка обязана быть единой, форма принимает пакет целиком либо объясняет, что требуется исправить до завершения. Выбор между этими сценариями обсуждают с принимающим отделом: способен ли сотрудник начать расчёт по части материалов и как он увидит, чего ещё не хватает.
Что происходит с уже переданным файлом
Состояние «Загружено» до отправки заявки требует отдельного решения о временном хранении. Разработчик объясняет, как файл связывается с итоговым обращением и что происходит, если клиент ушёл со страницы. Руководителю не нужен внутренний код этого процесса. Ему нужны срок временного хранения, порядок удаления и ответственный за доступ, потому что документы могут содержать коммерческие сведения, которые не следует оставлять доступными по случайно полученной ссылке.
При повторном клике или обновлении страницы клиенту полезно видеть подтверждение уже принятого обращения, а сотруднику — получить один связанный с ним набор материалов, чтобы повтор интерфейсного действия не порождал новую работу. На тестовой форме исполнитель показывает, что произойдёт при повторе и каким способом компания отличит дополнение от новой заявки. Это закрывает вопрос о потерях и дублях до начала работы с реальными документами.
Как различить состояния вложения
Выбрано
Документ пока на устройстве
Передаётся
Есть понятное состояние ожидания
Принято
Вложение связано с обращением
Нужна замена
Ошибка названа у конкретного файла
Пройти форму так, как её проходит клиент
В безопасной тестовой среде клиент проходит полное обращение с телефона: заполняет поля, выбирает документы, заменяет одно вложение и отправляет пакет, после чего принимающий сотрудник открывает ту же заявку и читает файлы. Галочка на форме сообщает лишь о части пути.
Короткий маршрут самостоятельного осмотра
- До выбора файла понятны назначение, форматы, размеры и количество.
- Допустимый файл принимается, неподходящий получает конкретное объяснение.
- Длинное имя не ломает экран, а нужная версия различима.
- Удаление и замена работают без потери других полей.
- Кнопкой выбора и действиями списка можно пользоваться с клавиатуры.
- После прерывания связи форма объясняет судьбу вложений.
- Принятое обращение содержит тот же набор документов, который подтвердил клиент.
Сотруднику полезно участвовать лично. Он может обнаружить, что формально допустимый документ нельзя использовать для расчёта, в названии не хватает модели или несколько файлов трудно сопоставить с одной заявкой. Такие наблюдения превращаются в понятные подсказки и правила формы. Для испытания сотрудник готовит обычные документы своего отдела и образцы, которые нельзя использовать для расчёта. Это помогает отличить технически допустимый формат от полезного содержания. После такого просмотра можно обоснованно уточнить подсказку о назначении вложения, не ожидая ошибки реального клиента.
Если хотя бы один пункт не проходит, задание на доработку формы сайта описывают через конкретное действие и ожидаемый результат: «замена вложения сохраняет описание задачи», «ошибка размера относится к выбранному файлу», «сотрудник открывает документ из принятой заявки». По этим формулировкам результат можно принять повторным прохождением, не разбираясь в устройстве загрузчика.
Источники и полезные ссылки
Интерфейсы и возможности сервисов могут меняться. Перед настройкой сверяйтесь с актуальной документацией.


