Не работает форма обратного звонка

Здравствуйте. В форме обратного звонка заполняю все данные, нажимаю кнопку “отправить”, возникает ошибка в форме, мол, номер телефона не заполнен. Отправляется форма только на Enter на клавиатуре. В чем может быть проблема?

Посмотрите в инструментах разработчика браузера. Может там есть ошибки:

  1. Нажмите F12 (или правой кнопкой мыши по странице → Исследовать элемент).
  2. Затем откройте вкладку Console.
  3. Обновите страницу.
  4. Снова откройте форму обратного звонка.
  5. Введите необходимые данные и нажмите Отправить.

Здравствуйте. Спасибо за ответ, но не сработало. Я должен вписать что-то во вкладке Console?

Вкладка Console служит лишь для информационных целей. Иногда на странице что-то не работает, а причину этого (ошибку) можно увидеть только на вкладке Console. Пока по вашим словам слишком мало информации для решения.

Спасибо за ответ, но не сработало.

Не сработало что? Заработать и не должно было, я просто спросил дополнительную информацию.

Я так же надеюсь вы почистили кеш в магазине/браузере :slight_smile:

Я понял. Сделал, как просили, во вкладке Console ничего не написано(

Значит явных JavaScript-ошибок нет.

Меня смущает тип ошибки: ошибка говорит не то, что телефон введен некрректно, а то, что в поле телефона вообще как-будто ничего нет.

Для проверки я бы ещё использовал номер телефона «попроще»: +79123456789.

Как давно появилась ошибка? После чего появилась?

Можно сравнить текущий шаблон в магазине со стандартным: может что-то поменялось? Шаблон находится здесь:
responsive / templates / addons / call_requests / views / call_requests / components / call_requests_content.tpl
Стандартный шаблон можно посмотреть и на демо-магазине:
http://demo.cs-cart.com/admin.php?dispatch=templates.manage
В боковой панели найти нужный файл.

Ошибка была еще с самого начала как включили модуль “Обратный звонок”. Стоит стандартный шаблон обратного звонка.

Сравнили два файла, абсолютно идентичны. Ради эксперимента заменили наш шаблон тем, который скачали с демо магазина. Почистили кэш. Изменений нет, к сожалению…

Тогда модуль Обратный звонок должен работать корректно. Можете проверить на demo.cs-cart.com / demo.cs-cart.ru .

Возможно, модулю что-то мешает или он с чем-то конфликтует:

  1. Посмотрите в инструментах разработчика первую вкладку Elements.
  2. Что найти поле телефона в «элементах» нажмите правой кнопкой мыши на поле телефона и нажмите Исследовать элемент.
  3. В инструментах разработчика выделится <input>. Нужно посмотреть на input И рядом стоящий label.

Вот код: IMG_20190714_164910_344

У меня было подобное. В записях посмотрел, написано что удалял это <a href="{“pages.view&page_id=20”|fn_url}">{__(“Contacts”)}

Попробуйте удалить все классы class и data-аттрибуты у input и label. Чтобы получилось что-то похожее на это:

<label for="call_data_call_request_399_phone">Телефон</label>
<input id="call_data_call_request_399_phone" size="50" type="text" name="call_data[phone]" value=""/>

Если форма после этого отправится, тогда постепенно возвращайте удаленные элементы.

Если не отправится, то тогда лучше обратится в тех. поддержку https://helpdesk.cs-cart.com/

А где именно Вы это удаляли? В файле call_requests_content.tpl?

Удалил вот эту строчку class=“ty-control-group__title cm-mask-phone-label cm-required”> у label и всё отправилось. Что теперь делать?

Я выше писал:

Удаляйте по-одному CSS-классы и проверяйте форму. CSS-классы разделяются пробелами. Скорее всего вы найдете один CSS-класс из-за которого не отправляется форма.

Возможно, это будет CSS-класс cm-required. Если это будет он, то это странно. Нужно будет заниматься дебагом JavaScript-кода.

К сожалению, вы оказались правы. Это действительно класс cm-required.(
Я так понимаю, тут придется обратиться к специалистам.

такие ошибки обычно появляются при дублировании айди поля. вероятно у вас есть поле с таким же айди как у телефона (может блок продублирован в макетах) и при отправке проверяет первое попавшееся, а оно пустое

Так там вроде проверяется внутри именно той формы, которая постится

а вроде нет