Модальное окно после отправки формы. javascript

Всем доброго времени суток. Прошу о помощи) Второй день не могу найти решения на вопрос с модальным окном после отправки формы. Проще говоря нужно, чтобы после нажатия на кнопку submit вывел скрытый div с сообщением: «Ваше сообщение отправлено».

html

<form method="post" action="php/contact.php" id="contactfrm" role="form">

                    <div class="col-sm-6 wow fadeInRight animated" style="visibility: visible; animation-name: fadeInRight;">
                        <div class="form-group">
                            <label for="name">Name</label>
                            <input type="text" class="form-control" name="name" id="name" placeholder="Enter name" title="Please enter your name (at least 2 characters)" required>
                        </div>
                        <div class="form-group">
                            <label for="email">Email</label>
                            <input type="email" class="form-control" name="email" id="email" placeholder="Enter email" title="Please enter a valid email address" required>
                        </div>
                    </div>
                    <div class="col-sm-6 wow fadeInRight animated" style="visibility: visible; animation-name: fadeInRight;">
                        <div class="form-group">
                            <label for="message'">Comments</label>
                            <textarea name="message" class="form-control" id="comments" cols="3" rows="5" placeholder="Enter your message…" title="Please enter your message (at least 10 characters)" required></textarea>
                        </div>
                        <button name="submit" type="submit" class="btn btn-lg btn-primary" id="submit" data-reveal-id="myModal" data-animation="fade">Say Hello</button>
                        <div class="result"></div>
                    </div>
                </form>
java

//-- скрытый div

  <div id="myModal" class="reveal-modal">
     <h1>Заголовок</h1> 
     <p>Любое содержимое</p> 
     <a class="close-reveal-modal">×</a>
     </div>

 //-- действие с id submit, после которого будет показан div

    <script type="text/javascript">
     $(document).ready(function() {
     $('#submit').submit(function(e) {
          e.preventDefault();
      $('#myModal').reveal();
          });
       });
     </script>
Отправка формы при помощи php

<?php
if (isset($_POST['name'])) {$name = $_POST['name'];}
if (isset($_POST['email'])) {$email = $_POST['email'];}
if (isset($_POST['message'])) {$textarea = $_POST['message'];}
 
 
$address = 'mail@mail.ru';
$sub = "AtGroove Message";
$mes = "Name: $name \nEmail: $email \nMessage: $textarea";
$verify = mail ($address,$sub,$mes,"Content-type:text/plain; charset = utf-8\r\nFrom:$email");
if ($verify == 'true')
{
echo "<p>Mail sensed";
}
else 
{
echo "<p>Mail dont sensed";
}

header('Location: http://site.com/');
exit;
 

?>
После чего идет редирект на главную страницу. Можно ли сделать вывод дива после редиректа? Или же нужно смотреть в сторону AJAX (с помощью него отправлять форму)?

p.s. я новичек, наведите на путь истины)

groove
12 августа 2015, 20:57
modx.pro
1
16 845
0

Комментарии: 6

Сергей Шлоков
13 августа 2015, 14:04
+1
Глубоко не копаясь видно ошибку
Должно быть или так
$('#submit').click(function(e) {
...
или так
$('#contactfrm').submit(function(e) {
Ну и если jQuery подключен, то показать окно можно через него
$('#myModal').fadeIn();
    groove
    13 августа 2015, 17:28
    0
    при
    $('#contactfrm').submit(function(e) {
    кнопка просто мертвеет

    $('#myModal').fadeIn();
    сейчас попробую, спасибо.
      Сергей Шлоков
      13 августа 2015, 19:17
      +2
      Естественно, ведь у вас прописано
      e.preventDefault();
      который отменяет submit.
      П.С. Чтобы ответить на комментарий, нужно кликать на ссылку «ответить» под комментарием. Тогда человек, написавший комментарий получит уведомление.
        groove
        13 августа 2015, 21:01
        0
        Спасибо большое;)
      Владимир Ульяновский
      13 августа 2015, 22:00
      0
      А решение modstore.pro/packages/utilities/ajaxform не решает проблему?
      Вроде как там не сложно и модальное окно прикрутить…
        Евгений Пашков
        17 августа 2015, 19:42
        0
        А зачем так сложно?
        Можно после проверки на отправку вызвать модальное.
        Если вы используете Reveal c Foundation то вроде так оно вызывается:

        $("#myModal").foundation('reveal', 'open');
          Авторизуйтесь или зарегистрируйтесь, чтобы оставлять комментарии.
          6