Jquery Print Element ... распечатать внешнюю страницу - PullRequest
0 голосов
/ 20 августа 2011

Плагин print element делает то, что говорит.Печатает элемент на текущей странице.Тем не менее, мне действительно нужно распечатать внешнюю страницу.Я не хочу загружать эту страницу в скрытый элемент на странице.Я хотел бы указать плагин на внешнюю страницу.

Я уже создал способ загрузки страницы в скрытый элемент.(ниже код для этого).Это работает нормально, но вызывает некоторые другие проблемы, и я думаю, что было бы гораздо лучше напечатать внешнюю страницу.

ЛЮБЫЕ ИДЕИ?

Вот мой текущий код:

$(".printButton").click(function(){
 $("#projectPrint").empty();
 $("#projectPrint").load('PRINT_workOrderLastEntered.php', function(){

 $('#projectPrint').printElement({

 pageTitle:lastProjectNum

 });
 })

});

1 Ответ

0 голосов
/ 20 августа 2011

Вы можете выполнить асинхронный HTTP (Ajax) запрос Нажмите здесь . Читайте об этом. Сделайте ajax-запрос, когда нажата кнопка печати, внутри функции успеха вы можете сохранить содержимое вашего html-файла в переменной, а затем вы можете распечатать эту переменную или получить прямой доступ к селекторам, которые вам нужно распечатать. должны загрузить содержимое страницы.

Это пример, показывающий пользователю, как работает метод ajax. Это будет иметь междоменные проблемы. Но по-прежнему в разных доменах, если данные доступны только через RSS и у вас нет контроля над другим доменом, тогда лучшим вариантом будет прокси на стороне сервера.

Если у вас есть контроль над другим доменом, вы можете создать страницу, содержащую функцию javascript, которая использует XmlHttpRequest для извлечения RSS и возврата RSS. Затем вы можете использовать междоменную библиотеку сообщений, такую ​​как EasyXDM , для вызова этого скрипта.

Возможно, вы также захотите проверить, поддерживает ли веб-сайт RSS-канала JSONP в качестве альтернативного формата, который позволит вам получать данные RSS через JavaScript. Убедитесь, что вы доверяете сайту, если вы делаете это, поскольку сайт может выполнять JavaScript на вашей странице!

Я также нашел Google Feed Apis, очень полезный для междоменного домена

Извините, что ушел от темы. Поскольку пользователь вызывает свой собственный локальный php-файл, ему не нужно беспокоиться о междоменной проблеме, просто используя type = 'GET'; Сделаю. Incase, если данные не были получены с использованием вышеуказанных методов, поможет!

$.ajax({
    url: 'http://news.bbc.co.uk',
    type: 'GET',
    success: function(res) {
        var headline = $(res.responseText).find('a.tsh').text();
        alert(headline);
    }
});

Я только что проанализировал xml ... аналогично, вы можете использовать wwhat.php вместо bbc.co.uk и в функции успеха, так же, как и я, вы можете получить заголовок или что угодно, даже содержимое содержимого. Div и сохранить его в переменной, например: заголовок. Вы можете просто напечатать эту переменную, так как она содержит искомое значение.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...