- Поисковые системы
- Практика оптимизации
- Трафик для сайтов
- Монетизация сайтов
- Сайтостроение
- Социальный Маркетинг
- Общение профессионалов
- Биржа и продажа
- Финансовые объявления
- Работа на постоянной основе
- Сайты - покупка, продажа
- Соцсети: страницы, группы, приложения
- Сайты без доменов
- Трафик, тизерная и баннерная реклама
- Продажа, оценка, регистрация доменов
- Ссылки - обмен, покупка, продажа
- Программы и скрипты
- Размещение статей
- Инфопродукты
- Прочие цифровые товары
- Работа и услуги для вебмастера
- Оптимизация, продвижение и аудит
- Ведение рекламных кампаний
- Услуги в области SMM
- Программирование
- Администрирование серверов и сайтов
- Прокси, ВПН, анонимайзеры, IP
- Платное обучение, вебинары
- Регистрация в каталогах
- Копирайтинг, переводы
- Дизайн
- Usability: консультации и аудит
- Изготовление сайтов
- Наполнение сайтов
- Прочие услуги
- Не про работу

В 2023 году 36,9% всех DDoS-атак пришлось на сферу финансов
А 24,9% – на сегмент электронной коммерции
Оксана Мамчуева

Как снизить ДРР до 4,38% и повысить продажи с помощью VK Рекламы
Для интернет-магазина инженерных систем
Мария Лосева
Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий
Приветствую, уважаемые форумчане!
Возникла небольшая трудность. Есть форма обратной связи, где при клике по кнопке "отправить" мы получаем на этой же странице сообщение "Ваше письмо отправлено". Стоит задача, что помимо вывода сообщение об успешной отправке открывалось еще и всплывающее окно. Пробовал средствами js, но получается, что js срабатывает, всплывающее окно появляется, а вот письмо не отправляется. Попробовал погуглить, нашел решение с setTimeout, но как правильно применить к моему случаю не соображу.
Код кнопки (проблема выделена красным):
Код всплывающего окна:
Содержание всплывающего окна.
<button type="button" value="закрыть" onclick="document.getElementById('wind').style.display='none'; return false;">
закрыть</button>
</div>
Конечно у вас не будет ничего отправляться. Вы же обрубаете выполненние click через "return false". Соответственно срабатывает только показ попапа. Дальше браузер ничего не делает.
У вас разве через ajax форма отправляется, чтобы тут же подтверждение показывать?
Мож у вас там на jquery обработчик формы какой-то есть, а вы тут городите непонятно что )
это форма плагина Contact Form 7 для wp
Ну так вам и надо смотреть в код этой формы и там добавлять событие с попапом. Или смотреть конфиги, может там что-то есть.
У вас форма ajax-ом улетает. Вам надо не событие отправки или клика отлавливать. А событие получения ответа, типа "все ок, форма отправлена."
Иначе у вас попап будет и при ошибочной отправке открываться. Или вообще при любом клике.
---------- Добавлено 20.05.2014 в 17:47 ----------
А вообще, вы в гугл то смотрели?
Юзайте вот это, например, если с программированием проблемы - http://wordpress.org/plugins/contact-form-7-response-colorbox-popup/
maldivec, благодарю за подсказку, но этот вариант не очень подходит, в моем случае больше подошло бы решение с onclick
в моем случае больше подошло бы решение с onclick
Невозможно у вас решение через onclick ))
Вот рази интереса уберите просто return false; из вашего кода, а потом отправьте незаполненную форму.
Попробуйте поковырять этот плагин и вместо его окна показывать свое.
Либо onclick (а лучше наверное onsubmit) + аякс запрос + показ всплывающего окна после завершения запроса.
либо без onclick с показом окна после отправки формы
siv1987, мне любой вариант подойдет, лишь бы окно всплывало и письмо отправлялось
Как пример, и на jquery
Можно и какой нибудь прелоадер повесить пока идет запрос
siv1987, ну там же плагин Contact Form 7. Ну куда еще один POST?
Там и так все на ajax и рулиться, и валидируется, и отправляется, и сообщения показываются ))
Там и так все на ajax и рулиться, и валидируется, и отправляется, и сообщения показываются ))
Не знаю, не пользовался. Показал пример для обычной формы