Елена, Наврятли вы найдете решение конкретно под вашу задачу. Могу порекомендовать вам сначала составить краткий план для себя и только потом писать код. Так будет гораздо проще.
Как бы сделал я (Примерно):
1. Каждому полю формы прописать required
2. Создаем функцию, которая будет обрабатывать отправку формы.
2.1. Реализуем проверку заполнения поля. Если одно или несколько полей не заполнено, показываем уведомление и соответственно ничего не отправляем.
2.2. Реализовываем ajax-запрос. Соответсвенно он срабатывает только если заполнены все поля.
3. Настраиваем php-файл. В интернете их полным полно. От простых до сложных. Можете взять простой, потом его дополните.
4. Разбираемся с динамическим добавлением/удалением.
5. Проверяем отправку данных с динамически добавленных элементов
Елена, Сам я с php не особо работаю, поэтому не смогу подсказать. Да и стакой задачей не сталкивался, с обработкой [], поэтому не знаю, что там и к чему. Но уверен, что если почитать пару статей и выполнить примеры, то все поймете.
В других формах нет проблем, из-за того, что там скорее всего отсутствуют селекты. А ваш php-файл на ответ ajax-запроса возвращает не поими что (и связано это из-за селектов). Можете проверить это при помощи console.log(data);
Так же вы хотите, чтобы у вас появлялась надпись Пожалуйства, заполните все поля, если каки-либо поля не заполнены. НО, в вашем коде эта надпись будет появляться только в том случае, если форма будет отправлена. И ни при каких других обстоятельствах.
Я бы лучше на вашем месте переписал бы полностью функцию call() и php-обработчик с нуля, попорядку реализовывая функционал.
1. По поводу select. Почитайте про атрибут name, когда в нем используются []. В php он по-другому обрабатывается.
2. Это никак не связано с переменной, которую вы указали. После выполения ajax-запроса у Вас выполняется одна из функций: либо success (если ajax-запрос успешно выполнен), либо error (если ajax-запрос завершен неудачно). Этим функция можно передать параметры. У вас это параметр data. Поработайте с ним. Можете через console.log(data) вывести его и посмотреть что приходит.
Сможете написать/дать ссылки на инструменты? Буду очень благодарен.