2016-09-15 2 views
1

Я пытаюсь показать предупреждение при отправке формы.Форма контакта 7 on_submit не работает

Я добавил этот код в "Дополнительные настройки" на Contact Form 7 плагин (версия 4.2.2)

on_submit: "предупреждение ('Опубликовано');"

Ничего не появляется.

  • нет ошибок, ни предупреждений на консоли
  • Нет ошибок, ни предупреждений на поджигатель
  • Я не думаю, нет Javascript конфликта, так как Контактный формуляр 7 успешно отправляет сообщения
  • я уверен, что форма «представляется», потому что я могу связаться Контакт Ошибка Form Form Form Form

Любые идеи по решению или отладке этой проблемы?

ответ

0

у вас есть какая-либо ссылка для нас, чтобы уточнить это? Это довольно сложно.

Но: «Я уверен, что форма« отправлена ​​», потому что я могу видеть ошибки в форме формы контакта 7» -> это проверка сервера или проверка подлинности? Может быть, он НЕ отправляется?

Все лучшее

2

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

Ваша форма работает вообще? Если нет, вполне вероятно, что JavaScript-код контакта Form 7 не работает на вашем сайте.

Я покажу вам несколько возможных причин для этого.

JavaScript файл не загружен

Это является причиной, что я видел самое последнее время. Это связано с вашим шаблоном, в котором отсутствуют функции вызова для очереди в JavaScript. Необходимыми функциями являются wp_head() и wp_footer(), и они находятся в header.php и footer.php, соответственно, в большинстве правильных тем.

конфликты с другими JavaScript

Многие плагины и темы загрузить свои собственные JavaScript. Некоторые из них могут быть созданы неправильно и, следовательно, конфликтуют с другими плагинами. В большинстве случаев вы можете найти ошибки JavaScript с Firebug, надстройкой для Firefox, когда возникают такие конфликты.

HTML структура не является действительным

Как и другие JavaScript, Contact Form 7 в JavaScript траверсы и манипулирует структуру HTML. Поэтому, если исходная структура HTML недействительна, она не сработает. Вы можете проверить, является ли ваш HTML действительным или нет с помощью HTML-валидатора. Я рекомендую W3C Markup Validation Service для использования в таком случае.

Мой совет использовать CF 7 по умолчанию способ реализации вашей идеи - мы будем называть его:

«1. Лучший вариант».

На панели инструментов WP перейдите к контакту (CF7) и выберите форму и перейдите на вкладку «Дополнительные настройки».

Там вы можете добавить подобный код, как это:

on_sent_ok: "alert('sent ok');" 
on_submit: "alert('submit');" 

Если вы установили on_sent_ok:, за которым следует один строки кода JavaScript, вы можете сказать, контакт формируют код, который должен выполняться, когда почта успешно отправлено. Аналогично, с on_submit:, вы можете указать код, который должен быть выполнен, когда форма была представлена ​​независимо от результата.

На обоих действий, вы можете использовать любой вид JS кода, как вы бы в файле .js:

on_sent_ok: "some js code here"

Вы можете использовать его для вызова функции, как это:

on_sent_ok: "your_function();"

Или написать код (это один перенаправляет поблагодарить вас страницу):

on_sent_ok: "document.location='/thank-you-page/';"

2. И еще один вариант, чтобы справиться с JQuery:

Контактный формуляр 7 стремится испускают ряд событий Javascript, что пузырь до объекта документа. В версии 4.2 они могут быть найдены в contact-form-7/includes/js/scripts.js. Если вы используете JQuery вы можете получить доступ к этим такие события:

$(document).on('spam.wpcf7', function() { console.log('submit.wpcf7 was triggered!'); });

$(document).on('invalid.wpcf7', function() { console.log('invalid.wpcf7 was triggered!'); });

$(document).on('mailsent.wpcf7', function() { console.log('mailsent.wpcf7 was triggered!'); });

$(document).on('mailfailed.wpcf7', function() { console.log('mailfailed.wpcf7 was triggered!'); });

EDIT:

Некоторые из этих вариантов JQuery являются используется, но почему-то устарел, поэтому, если вы enco уберите проблемы, попробуйте использовать, например. 'wpcf7: mailsent' вместо 'mailsent.wpcf7'.

Тот же формат, идет другой вариант, на самом деле все варианты наблюдаются в указанном файле:

сор-содержание/плагины/контакт-форма-7/включает/JS/script.js

0

Я думаю, что что-то блокирует ваше всплывающее окно.

Попробуйте отладки с помощью «console.log», так что вы можете устранить это как потенциальный вопрос:

on_submit:"console.log('Submitted');" 
+0

Нет везения, ни на консоли –

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