40 votes

Écrire du contenu dans une nouvelle fenêtre avec JQuery

J'ai une page Web avec un élément DIV. Lorsqu'un utilisateur clique sur "imprimer", je souhaite imprimer le contenu de cette div. S'il vous plaît noter que je veux seulement imprimer le contenu de la DIV, pas la page entière. Pour tenter cela, j'ai décidé d'ouvrir une nouvelle fenêtre en utilisant JavaScript. J'allais ensuite écrire le contenu de la DIV dans la nouvelle fenêtre. Ma question est la suivante: est-ce possible avec JQuery? Si c'est le cas, comment? Actuellement, j'essaye ce qui suit:

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

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

52voto

Steve Greatrex Points 8466

Vous pouvez utiliser

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

Voir cet exemple

5voto

Alpesh Points 2501

Essayer -

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

Référence - http://www.javascripter.net/faq/writingt.htm

4voto

ITroubs Points 4570

fichier1:

 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?
}
 

et dans le deuxième fichier faire cela:

 var html = window.opener.find("#divToPrintID").html();
 

2voto

FatherStorm Points 5332

J'ai trouvé un tutoriel parfaitement adapté à cet objectif. Http://www.bennadel.com/blog/1591-Ask-Ben-Print-Part-Of-A-Web-Page-With-jQuery.htm

En outre, vous pouvez afficher des CSS en impression seule sur une page contenant tout ce que vous voulez, mais ce que vous voulez.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X