Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 30.08.2016, 15:18
Аспирант
Отправить личное сообщение для Floyd Посмотреть профиль Найти все сообщения от Floyd
 
Регистрация: 20.05.2014
Сообщений: 40

Как обрабатывать разный ответ от сервера и вставлять на страницу?
Всем снова привет.
К примеру, есть форма регистрации, ее поля, кнопка сабмит.
При нажатии отправляем аяксом эту форму и получаем разные варианты:
1) неверный формат поля => надо высветить div с ошибкой, помнеять класс поля
2) всё ок => дизаблим кнопку сабмит, вставляем div с именем юзера

как правильно сделать?
а) сервер отвечает массивом, где содержится последовательно имя функции которую запустить и параметр.
б) заранее до сабмита как-то заложить варианты развития событий, а сервер отвечает массивом с вариантом развития и параметрами
в) ...?

то есть как решить задачу ответа от сервера, когда при этом ответе не только замена/вставка html, но могут быть и вызовы hide/show и тп?

спасибо.
Ответить с цитированием
  #2 (permalink)  
Старый 30.08.2016, 19:30
Аспирант
Отправить личное сообщение для scrollquest Посмотреть профиль Найти все сообщения от scrollquest
 
Регистрация: 21.08.2016
Сообщений: 77

А какая разница? Как удобней, так и делай. Обычно b используется, так как это проще, но хз, что у тебя там за логика.
Ответить с цитированием
  #3 (permalink)  
Старый 30.08.2016, 19:57
Аспирант
Отправить личное сообщение для Floyd Посмотреть профиль Найти все сообщения от Floyd
 
Регистрация: 20.05.2014
Сообщений: 40

а в таком случае когда и как будет правильнее отлавливать элементы в DOM?
а) при загрузке страницы делаю массив, куда вношу все элементы с которыми потенциально может быть взаимодействие (включая errorblock, который пока скрыт)
б) так же, но при сабмите делаю этот массив

а после ответа уже обращаться к элементу из этого массива объектов?
Ответить с цитированием
  #4 (permalink)  
Старый 30.08.2016, 20:09
Аспирант
Отправить личное сообщение для scrollquest Посмотреть профиль Найти все сообщения от scrollquest
 
Регистрация: 21.08.2016
Сообщений: 77

Floyd,
тоже без разницы, от ситуации. Детские какие-то у Вас проблемы. Вы сами то подумайте головой, какая нахуй разница как вы будете это делать при прочих равных? Тут разница будет только с точки зрения того, что если при первоначальной загрузке много данных и вычислений, то есть смысл подгрузить их потом, чтобы не висло ничего, чтобы обеспечить более плавную загрузку.
Ответить с цитированием
  #5 (permalink)  
Старый 30.08.2016, 23:57
Аспирант
Отправить личное сообщение для Floyd Посмотреть профиль Найти все сообщения от Floyd
 
Регистрация: 20.05.2014
Сообщений: 40

проблемы детские, да.
но интересно как профи организуют взаимодействие с сервером.
Ответить с цитированием
  #6 (permalink)  
Старый 31.08.2016, 00:41
Профессор
Отправить личное сообщение для Rise Посмотреть профиль Найти все сообщения от Rise
 
Регистрация: 07.11.2013
Сообщений: 4,662

Floyd, элементарно, сначала сделай что-бы работало без js...
Ответить с цитированием
  #7 (permalink)  
Старый 31.08.2016, 22:51
Профессор
Отправить личное сообщение для Rise Посмотреть профиль Найти все сообщения от Rise
 
Регистрация: 07.11.2013
Сообщений: 4,662

Floyd, теперь прикручивай ajax...
Ответить с цитированием
  #8 (permalink)  
Старый 01.09.2016, 06:19
Профессор
Отправить личное сообщение для warren buffet Посмотреть профиль Найти все сообщения от warren buffet
 
Регистрация: 08.07.2016
Сообщений: 1,332

Сообщение от Floyd
профи
Правила для всех полей и все опции формы хранятся на сервере и передаются в браузер в фазе рендера формы.

Кнопка Отправить не активна, пока все необходимые поля не заполнены правильно.

Проверка правильности идет непосредственно во время ввода/изменения полей формы.

Когда все правильно, юзер может нажать Отправить.

В фазе получения данных, серверный скрипт еще раз проверяет правильность по тем же самым правилам.

Если не все правильно, сервер выдает текст с инфой о том, что неправильно.

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

Приступай к реализации.
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Как сделать такую страницу mortido Элементы интерфейса 11 02.10.2014 07:20
как удалить из DIVа находящийся там ответ на ajax-запрос? ask67 jQuery 1 18.09.2014 22:29
как обернуть страницу во фрейм если она не хочет? Kvark Элементы интерфейса 19 07.08.2013 15:46
Как сохранить быстро перезагружаемую страницу? avatator Общие вопросы Javascript 8 16.05.2013 01:39
Ответ от сервера о окончании задачи Vit AJAX и COMET 13 17.06.2012 21:31