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 :: Как получить ответ AJAX

 PHP.SU

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


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

> Описание: Как получить ответ AJAX
3d_killer
Отправлено: 16 Февраля, 2012 - 06:14:58
Post Id



Участник


Покинул форум
Сообщений всего: 1916
Дата рег-ции: Апр. 2011  
Откуда: Ростов-на-Дону


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




Имеется форма:
CODE (html):
скопировать код в буфер обмена
  1. <form action='blocks/upload.php' method='post' name='form_1' enctype='multipart/form-data' id='form_1' target='dst'>
  2.             <input name='myfile' type='file' id='one'><br>
  3.             <input name='send' type='submit' value='Отправить' id='send'>
  4.                 <input name='cansel' id='cansel' type='button' value='Отмена'><br>
  5.                 <input name='id' type='input' value='' id='id_el' style='visibility:hidden'>
  6.         </form>
  7.         <iframe name='dst'  id='dst'></iframe>

При сабмите я закрываю всю страницу дивом, в файле есть echo который выводит информацию в iframe.
Как можно получить информацию что обработка окончена или содержимое IFRAME изменилось чтобы разблокировать страничку?
 
My status
 Top
sKaa
Отправлено: 16 Февраля, 2012 - 06:21:48
Post Id



Частый посетитель


Покинул форум
Сообщений всего: 979
Дата рег-ции: Окт. 2011  
Откуда: Россия г. Нижний Новгород


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

[+]


А причём тут вообще Ajax?? - То, что ты юзаешь фрейм это далеко не Ajax, не вводи себя в заблуждение...
Можно вместе с ответом пхп внутри фрейма выполнить что-то подобное.
CODE (javascript):
скопировать код в буфер обмена
  1.  
  2. window.parent.document.getElementById("div_id");
  3.  

(Добавление)
Имхо, раз пошла такая пьянка, (попытка имитации асинхронной загрузки файлов на сервер) - хотя о чем это я? Вместо того, чтобы "перекрывать" форму дивом лучше выставляй атрибуты display:none. А после ответа в iframe с помощью window.parent.document.getElementById("form_id"); выставляй обратно display:inline
(Добавление)
Ajax не способен загружать файлы на сервер!!!
 
 Top
3d_killer
Отправлено: 16 Февраля, 2012 - 06:31:51
Post Id



Участник


Покинул форум
Сообщений всего: 1916
Дата рег-ции: Апр. 2011  
Откуда: Ростов-на-Дону


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




у меня сделана админка на AJAX, вроде нормально вопрос задал. На время загрузки заслоняется дивом и высвечивается анимация мне нужно получить событие когда картинка загружена чтобы убрать анимацию
(Добавление)
не дочитал твой ответ вот дописываю, так и сделано выставляется видимость, но! помимо мне нужно выполнить:
CODE (javascript):
скопировать код в буфер обмена
  1. var menu_id = $('#menu_id').val();
  2.                                                 $.get('blocks/table.php', { table: menu_id},
  3.                                         function(data)
  4.                                                 {
  5.                                                         $('.data').html(data);
  6.                                                         $('.max-div').css('display', 'none');
  7.                                                 });

дабы увидеть изменение картинки меню, поэтому интересует именно AJAX поймать событие окончания загрузки
Прикреплено изображение (Нажмите для увеличения)
Служебная записка.JPG
 
My status
 Top
sKaa
Отправлено: 16 Февраля, 2012 - 06:41:35
Post Id



Частый посетитель


Покинул форум
Сообщений всего: 979
Дата рег-ции: Окт. 2011  
Откуда: Россия г. Нижний Новгород


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

[+]


Я тебе объяснил. В пхп скрипте blocks/upload.php после окончания всех манипуляций, в случае успешной загрузки :
PHP:
скопировать код в буфер обмена
  1.  
  2. ?>
  3. <script>
  4. window.parent.document.getElementById("ТУТ ID ДИВА КОТОРЫЙ ВСЁ ПЕРЕКРЫВАЛ").style.display = 'none';
  5. // А чтоб увидеть новую картинку
  6. window.parent.document.getElementById("ТУТ ID ДИВА В КОТОРОМ НУЖНО ОБНОВИТЬ КАРТИНКУ").innerHTML = '<img src="путь к новой картинке" /> ';
  7.  
  8. </script>
  9. <?
  10.  
 
 Top
3d_killer
Отправлено: 16 Февраля, 2012 - 06:45:41
Post Id



Участник


Покинул форум
Сообщений всего: 1916
Дата рег-ции: Апр. 2011  
Откуда: Ростов-на-Дону


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




Так у меня вывод же из базы идет там куча картинок...
 
My status
 Top
tuareg
Отправлено: 16 Февраля, 2012 - 09:33:38
Post Id


Участник


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


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




Есть настройки(события скорей всего правильней) ajaxStsrt и ajaxStop. их и используй.
Я на этом форуме уже приводил пример.(мне искать лень Улыбка )
 
 Top
sKaa
Отправлено: 16 Февраля, 2012 - 09:52:11
Post Id



Частый посетитель


Покинул форум
Сообщений всего: 979
Дата рег-ции: Окт. 2011  
Откуда: Россия г. Нижний Новгород


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

[+]


tuareg, а при чём тут ajax??
 
 Top
tuareg
Отправлено: 16 Февраля, 2012 - 11:08:10
Post Id


Участник


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


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




согласен. ступил... Улыбка
Тогда по событию submit открывать див. А после вставки картинки его скрывать.
P.S напишите что происходит(код функции) при нажатии на кнопку сохранить
 
 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