2011-02-07 4 views
0

У меня есть форма, которая обычно имеет хэш. Я могу представить форму обычным способом и запустить обычную проверку. Если есть ошибки, форма re-render и zend добавляет обычные ошибки. Кажется, что отправка форм с помощью ajax (jQuery) означает, что я теряю всю эту проверку, что, я уверен, уже было рассмотрено ранее. Как вы получаете такую ​​же проверку и обрабатываете ошибки при выполнении представлений ajax?Как преодолеть недостатки отправки формы через ajax

Раньше я беспокоился о элементе хэша, но я обнаружил, что это не имеет значения для представлений форм ajax. Так что это один из путей.

ответ

1

Обработка валидации с помощью AJAX for является двухэтапным процессом. Сначала вы должны включить всестороннюю проверку полномочий. Это должно предупредить пользователя о проблемах до фактического вызова AJAX.

Вторая включает стандартную проверку на сервере. Если это не удается, вы можете просто сгенерировать 404 не найденных или 400 плохих запросов, потому что кто-то пытается отправить данные, не пройдя проверку правильности интерфейса. Обратите внимание, что это может вызвать проблемы, если вы нуждаетесь , чтобы выполнить проверку на стороне сервера для некоторых компонентов (дублировать адреса электронной почты, имена пользователей и т. Д.). В этом случае вы можете отправить ошибки в нужном формате (JSON и XML очень распространены) и сделать их интерфейсом.

+0

Кроме того, проверка подлинности зависит от включенности javascript. Вы не всегда можете рассчитывать на это, и предоставление 404 основано на том, что это точно не сделает для хорошего ux. – Matthew

+0

@ Josh хорошая точка о 404 не найдена. Не думал об этом раньше, как о способе обращения с теми, кто играл с проверкой переднего конца. – jblue

+0

@Matthew Я действительно не знаю. Мне нравится его идея. Каков процент пользователей сегодня, у которых нет javascript? Любая статистика? Я надеюсь, что они меньше 5% – jblue

Смежные вопросы