Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 25.02.2011, 15:14
Интересующийся
Отправить личное сообщение для Garik Посмотреть профиль Найти все сообщения от Garik
 
Регистрация: 09.07.2010
Сообщений: 19

Вызов функции печати страницы полученной через AJAX
Приветствую!
Столкнулся с такой проблемой, необходимо распечатать страницу, формируемую через AJAX.
Логика такая, по нажатии кнопки посредством ajax формируется страница и она должна быть распечатана, причем содержимое этой страницы не должно отображаться. А просто по нажатию кнопки появляется стандартное окно печати и по нажатии кнопки печати, распечатывается страница, сформированная через ajax в файле print.php.

Делаю так:
есть страница page.php и кнопка
<button id="print_data" iddata="<?=$id;?>">Печать данных</button>

в аттрибут iddata подставляется id, по которому через ajax из БД вытаскиваются записи, которые и нужно распечатать.

Код jquery
$("#print_data").click(function  () {
   iddata = $(this).attr('iddata');
   $.ajax ({
      url: "print.php",
      type: "POST",
      data: {iddata: iddata}
   });
return false;
});

В файле print.php из БД выбираются нужные записи и формируется страница html. Вот собственно ее и нужно распечатать. Может как-то через функцию "window.print();", но не понятно где конкретно ее применять.

PS: ajax возвращет код html нужной страницы, может как-нибудь его можно использовать?
Ответить с цитированием
  #2 (permalink)  
Старый 28.02.2011, 19:44
Интересующийся
Отправить личное сообщение для Garik Посмотреть профиль Найти все сообщения от Garik
 
Регистрация: 09.07.2010
Сообщений: 19

Вопрос еще в силе.
Ответить с цитированием
  #3 (permalink)  
Старый 28.02.2011, 21:09
Аватар для walik
Профессор
Отправить личное сообщение для walik Посмотреть профиль Найти все сообщения от walik
 
Регистрация: 09.11.2009
Сообщений: 1,101

Если не знаешь как печатать, то почитай тут

А если как вызвать то не знаю, я с печатью не работал, попробуй на onload повесить вызов, типа того:

<body onload="print('');">html</body>
__________________
"Всегда пишите код так, будто сопровождать его будет склонный к насилию психопат, который знает, где вы живете."
Мой сертификат :-D клацай
Ответить с цитированием
  #4 (permalink)  
Старый 01.03.2011, 11:16
Новичок на форуме
Отправить личное сообщение для Kolyaj Посмотреть профиль Найти все сообщения от Kolyaj
 
Регистрация: 19.02.2008
Сообщений: 9,177

1. Забываете про ajax.
2. Забываете про post.
3. Создаёте скрытый iframe с src print.php?iddata={iddata}
4. В iframe в конце window.print();
Ответить с цитированием
  #5 (permalink)  
Старый 02.03.2011, 17:05
Интересующийся
Отправить личное сообщение для Garik Посмотреть профиль Найти все сообщения от Garik
 
Регистрация: 09.07.2010
Сообщений: 19

Спасибо Kolyaj! Попробую так.
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Вызов функции при загрузке страницы disallow jQuery 6 24.07.2012 15:19
Как выводить часть элементов страницы через javascript Victim Events/DOM/Window 9 28.12.2011 22:51
return функции с ajax запросом !? namo86 AJAX и COMET 2 19.01.2011 19:30
Послать форму загруженную через ajax в div используя ajax ncux jQuery 2 16.08.2010 17:36
Просмотр передаваемых данных через AJAX Гость AJAX и COMET 3 04.08.2008 14:34