#php #mysql #jquery
#php #mysql #jquery
Вопрос:
У меня возникла проблема, когда у меня есть два поля выбора, одно для местоположения офиса, а другое для сотрудников, которые находятся в этом офисе. У меня все работает нормально, когда, если я выбираю офис, он получает данные для сотрудников в этом офисе в следующем выпадающем списке и включает это поле выбора.
У меня возникли проблемы с выяснением того, что при неудачной проверке сервера (т. Е. Не выбран сотрудник или не заполнено поле ввода) поле выбора цепочки остается активным с ранее выбранным выбором.
Любая помощь была бы с благодарностью!
Комментарии:
1. Ваш вопрос немного двусмысленный. В чем проблема?
2. Как сохранить включенным поле выбора цепочки и с помощью PHP выбрать значение, которое у них было, если проверка формы на стороне сервера завершается неудачей? Он всегда возвращается к отключенному и в нем нет значений.
Ответ №1:
Вам следует рассмотреть возможность использования фреймворка javascript, такого как jQuery и вызов php ajax, для проверки первого выбора и последующего заполнения второго. Таким образом, вам не нужно перезагружать всю страницу, только изменять содержимое выбора. Есть много примеров, которые можно найти в Интернете, погуглив. Проверьте этот учебник, например: http://www.9lessons.info/2010/08/dynamic-dependent-select-box-using.html?m=1
Комментарии:
1. У меня в принципе есть точная настройка скрипта. У меня есть несколько дополнительных текстовых полей для ввода, которые я добавил. Если одно из этих полей не проходит проверку на стороне сервера, как мне сохранить второе поле выбора, выбранное в соответствии с тем, что оно было?
Ответ №2:
Если я вас правильно понимаю, вам необходимо выполнить проверку ПЕРЕД отправкой. Используйте jQuery и проверьте поля формы; убедитесь, что сервер проверит, прежде чем вы опубликуете форму.
Комментарии:
1. Я пытаюсь избежать проверки на стороне клиента в случае, если у них отключен javascript.
2. @Chris это противоречит вашей логике цепочки. Если у них отключен Javascript, как вы ожидаете, что он «захватит данные»?
3. Я думаю, чтобы упростить жизнь, я просто внедрю проверку на стороне клиента. Есть ли у вас какие-либо идеи, если у меня также есть проверка на стороне сервера, и одному из них не удается перезагрузить поле выбора цепочки для выбора пользователей?
4. @Chris да; когда данные POST отправляются на страницу проверки, запустите проверку вашего источника данных, чтобы убедиться, что они действительны. Если нет, заново создайте форму и используйте данные POST в качестве динамических значений по умолчанию для элементов формы.
5. Вы могли бы сделать это, разместив страницу формы в самой себе. Если это успешно, то вы перенаправите на страницу успеха. Если нет, вы бы использовали данные POST и jQuery для выбора полей.