Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/topic.php on line 737
Форумы портала PHP.SU :: Знающие люди, подскажите в чем косяк кода

 PHP.SU

Программирование на PHP, MySQL и другие веб-технологии
PHP.SU Портал     На главную страницу форума Главная     Помощь Помощь     Поиск Поиск     Поиск Яндекс Поиск Яндекс     Вакансии  Пользователи Пользователи


 Страниц (1): [1]   

> Описание: Нет сообщения после отправки данных формы (ajax)
Viruss
Отправлено: 30 Августа, 2017 - 03:41:24
Post Id


Новичок


Покинул форум
Сообщений всего: 5
Дата рег-ции: Июнь 2017  


Помог: 0 раз(а)




Ситуация следующая. На странице есть форма которая прекрасно работает вот с таким скриптом:

CODE (javascript):
скопировать код в буфер обмена
  1.   <script type="text/javascript">
  2.     $(document).ready(function(){
  3.     $("#form").submit(function() {
  4.             var form_data = $(this).serialize();
  5.             $.ajax({
  6.             type: "POST", //Метод отправки
  7.             url: "../script/form_handler.php",
  8.             data: form_data,
  9.             success: function () {
  10.             alert ('Данные отправлены!')
  11.             }
  12.           });
  13.           });
  14.   });
  15.  </script>



Но, беда в том, что к странице прикручена альтернатива alert (SweetAlert2) основная функция которой лежит в отдельном файле (который так же прикручен к странице). Функция выглядит вот так:

CODE (javascript):
скопировать код в буфер обмена
  1.  function sweet() {
  2. swal({
  3.   title: '!!!',
  4. })
  5. }


При попытке сделать:

CODE (javascript):
скопировать код в буфер обмена
  1.   <script type="text/javascript">
  2.     $(document).ready(function(){
  3.     $("#form").submit(function() {
  4.             var form_data = $(this).serialize();
  5.             $.ajax({
  6.             type: "POST", //Метод отправки
  7.             url: "../script/form_handler.php",
  8.             data: form_data,
  9.             success: sweet()
  10.           });
  11.           });
  12.   });
  13.  </script>


Необходимое сообщение не отображается, или, если быть точным, при отправке формы, появляется на долю секунды и исчезает.
В то же время, если эту же функцию sweet(), повесить например на событие кнопки, то после нажатия окно не пропадает пока его не закроешь...
Подскажите, как исправить...
 
 Top
Viruss
Отправлено: 30 Августа, 2017 - 12:01:04
Post Id


Новичок


Покинул форум
Сообщений всего: 5
Дата рег-ции: Июнь 2017  


Помог: 0 раз(а)




После пары часов ковыряний, заметил что при вызове
CODE (javascript):
скопировать код в буфер обмена
  1.  
  2. function () {
  3.             alert ('Данные отправлены!')
  4.             }
  5.  


Страница как бы висит в перезагрузке пока не закроешь модальное окно.
Но при использовании своей функции sweet() страница сразу перезагружается, не дождавшись подтверждения в модальном окне. Как это исправить?
 
 Top
Viruss
Отправлено: 30 Августа, 2017 - 21:38:48
Post Id


Новичок


Покинул форум
Сообщений всего: 5
Дата рег-ции: Июнь 2017  


Помог: 0 раз(а)




Вопрос снят. Разобрался.
 
 Top
Страниц (1): [1]
Сейчас эту тему просматривают: 0 (гостей: 0, зарегистрированных: 0)
« JavaScript & VBScript »


Все гости форума могут просматривать этот раздел.
Только зарегистрированные пользователи могут создавать новые темы в этом разделе.
Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.
 



Powered by PHP  Powered By MySQL  Powered by Nginx  Valid CSS  RSS

 
Powered by ExBB FM 1.0 RC1. InvisionExBB