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 :: jquery dialog onsumit

 PHP.SU

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


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

> Без описания
daglas1
Отправлено: 09 Апреля, 2014 - 18:12:05
Post Id


Посетитель


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


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




Всем привет.
Я jquery только учу. По примерам взятым из https://jqueryui[dot]com/dialog/
Научился создавать диалоговое окно по нажатию на кнопку.
А нужно несколько инная задача, выводить диалоговое окно при попытке отправить форму - то на событие onsubmit, и чтобы сабмит формы не происходил пока пользователь не закроет диалоговое окно.
Подскажите как это сделать?
 
 Top
Viper
Отправлено: 09 Апреля, 2014 - 19:06:20
Post Id



Активный участник


Покинул форум
Сообщений всего: 4555
Дата рег-ции: Февр. 2007  
Откуда: Симферополь


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




Как-то так.

CODE (javascript):
скопировать код в буфер обмена
  1. $('form').submit(function(e){
  2.         e.preventDefault();
  3.  
  4.         var _this = $(this),
  5.                 dialog = $('<div id="dialog_form" title="My title"><p></p></div>').appendTo('body');
  6.  
  7.         dialog.dialog({
  8.                 dialogClass: 'dlg',
  9.                 modal: true,
  10.                 width: 800,
  11.                 height: 520,
  12.                 close: function(event, ui){
  13.                         dialog.remove();
  14.                         _this.trigger('submit');
  15.                 },
  16.                 buttons: [
  17.                         {
  18.                                 text: 'Ok',
  19.                                 id: 'button_ok',
  20.                                 click: function(){
  21.                                         // код выполняемый при клике на кнопку
  22.                                 }
  23.                         },
  24.                         {
  25.                                 text: 'Close',
  26.                                 click: function(){
  27.                                         dialog.remove();
  28.                                         _this.trigger('submit');
  29.                                 }
  30.                         }
  31.                 ]
  32.         });
  33.  
  34.         // Загружаем html в dialog
  35.         dialog.load('http://localhost/index.php?task=blabla');
  36.  
  37.         // или html с уже текущей страницы
  38.         //dialog.html($('#some_element'));
  39. });


-----
Список фильмов с описанием, блекджеком и... для Joomla? -> https://киноархив[dot]com
Демо нового движка для сайта php.su -> php[dot]su, проект на гитхабе
 
 Top
Viper
Отправлено: 09 Апреля, 2014 - 23:05:02
Post Id



Активный участник


Покинул форум
Сообщений всего: 4555
Дата рег-ции: Февр. 2007  
Откуда: Симферополь


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




_this.trigger('submit');
может привести к багу infinite loop. Не могу протестировать. Но можно заменить на $.post(). Тогда форму можно будет отправлять без перезагрузки страницы.


-----
Список фильмов с описанием, блекджеком и... для Joomla? -> https://киноархив[dot]com
Демо нового движка для сайта php.su -> php[dot]su, проект на гитхабе
 
 Top
SAD
Отправлено: 09 Апреля, 2014 - 23:29:29
Post Id



Постоянный участник


Покинул форум
Сообщений всего: 2508
Дата рег-ции: Май 2009  
Откуда: Днепропетровск, Украина


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




можно попробовать сделать

$('form').one('submit', ....
 
 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