У меня есть страница, которая создает заявку в нашей системе службы поддержки. Он действует как мастер со следующими шагами:
Шаг 1
Пользователь выбирает клиента из выпадающего списка. Существует событие jquery onchange, которое запускает и генерирует список для шага 2, скрывает div step1 и отображает div step2.
Шаг 2
Пользователь выбирает местоположение из выпадающего списка. Это генерируется на основе клиента, выбранного на шаге 1. Существует событие jquery onchange, которое запускает и генерирует список для шага 3, скрывает div step2 и показывает div step3.
Шаг 3
Пользователь выбирает тип из выпадающего списка и вводит текст в 3 различных текстовых поля. Если пользователь не может ввести текст или вводит недопустимый текст, мой контроллер изменяет состояние модели на недопустимое и возвращает представление.
Как я могу получить все выпадающие списки для повторного заполнения с правильным выбором, выбранным пользователем, и заставить страницу повторно отображаться на шаге 3?
Моей первой мыслью было использование ajax, и когда пользователь нажимает кнопку «Создать», я могу создать заявку оттуда и, в случае успеха, отправить их в детали заявки. В случае неудачи, просто отобразите сообщение об ошибке, и я все еще на странице, так что ничего страшного. Теперь, когда я пишу это, я думаю, что это лучше. Есть ли серьезные проблемы с использованием AJAX? Кажется, что в наши дни большинство сайтов используют какой-то тип javascript или ajax.
Вторая мысль - вообще не использовать ajax и передавать все страницы на сервер.
Что вы предлагаете?