Записать контент в новое окно с помощью JQuery - PullRequest
40 голосов
/ 01 октября 2010

У меня есть веб-страница с элементом DIV. Когда пользователь нажимает «печать», я хочу напечатать содержимое этого div. Обратите внимание, я хочу печатать только содержимое DIV, а не всю страницу. Чтобы попробовать это, я решил открыть новое окно, используя JavaScript. Затем я собирался записать содержимое DIV в новое окно. Мой вопрос, это возможно с JQuery? Если так, то как? В настоящее время я пробую следующее:

function printClick() {
  var w = window.open();
  var html = $("#divToPrintID").html();

  // how do I write the html to the new window with JQuery?
}

Ответы [ 4 ]

52 голосов
/ 01 октября 2010

Вы можете использовать

$(w.document.body).html(html);

См. этот пример

5 голосов
/ 01 октября 2010

Попробуйте -

var w = window.open();
var html = $("#divToPrintID").html();
w.document.writeln(html);

Ссылка - http://www.javascripter.net/faq/writingt.htm

4 голосов
/ 01 октября 2010

file1:

function find(input){
    return $(input);
}

function printClick() {
  var w = window.open();
  var html = $("#divToPrintID").html();

  // how do I write the html to the new window with JQuery?
}

и во втором файле:

var html = window.opener.find("#divToPrintID").html();
2 голосов
/ 01 октября 2010

Я нашел довольно идеальное соответствие учебника именно для этого .. http://www.bennadel.com/blog/1591-Ask-Ben-Print-Part-Of-A-Web-Page-With-jQuery.htm

Кроме того, вы можете привязать CSS только для печати к странице, на которой есть все, кроме того, что вы хотите.

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