Немного расширю ответ
Василий своим опытом. (Считаю, что ответ на вопрос присуждается ему).
UX это иллюзия, которую мы предоставляем юзерам для взаимодействия с интерфейсом. Поэтому все так.
Для того, чтобы не потерять данные я обычно создаю
<input type="hidden" value="">
, и в его value вписываю все данные с удобными разделителями (чтоб потом парсить удобно было), а отправляю по финальному submit.
Если разбираетесь, посмотрите сурсы
вот этого проекта.