Javascript:window.print(); nu funcționează (Programare, Javascript, Html)

Jeroen Bellemans a intrebat.

Am creat un link simplu pentru a imprima o pagină pe care am creat-o. Folosesc Google Chrome. Dar acest link nu funcționează. Când am verificat jurnalul de consolă, primesc acest mesaj când dau click pe link:

Dimensiunea maximă a stivei de apeluri a fost depășită

Iată HTML-ul pe care îl folosesc pentru a crea imprimarea:

Mulțumesc pentru ajutor!

Comentarii

  • fragmentul dvs. funcționează bine – a fost redefinit? puteți oferi mai mult context? –  > Por Daniel A. White.
  • scriptul tău funcționează bine pentru mine –> jsfiddle.net/sxuwzzd0 –  > Por pes502.
  • Acest lucru se întâmplă dacă apelăm metoda noastră în mod recursiv, dar nu avem nici o condiție de bază pentru a întrerupe bucla infinită. Apoi, StackOverflow se întâmplă. 😉 –  > Por Partha Sarathi Ghosh.
3 răspunsuri
Gerton

Încercați să înlocuiți cu cele de mai jos

Jeroen Bellemans

Am găsit soluția. A fost destul de prostesc.

Aveam două link-uri pe o pagină diferită pentru a imprima pagina. Pentru unul dintre linkuri foloseam o funcție pentru a imprima pagina onclick=PrintMe(). Celălalt link era fragmentul de mai sus. <a href="javascript:window.print();">Print me</a>.

Se pare că aceste două linkuri se luptau între ele. Aceasta este ceea ce înseamnă eroarea.

Mulțumesc totuși!

Comentarii

  • Am avut aceeași problemă. Am definit o metodă numită print apoi am apelat window.print(). Se pare că apelarea acestei metode este recursivă. Așa că am redenumit metoda mea în printMe și funcționează bine. –  > Por Partha Sarathi Ghosh.
  • Funcționează cu Typescript și Angular –  > Por Parth Developer.
GURU RAJ

Stai, asta e un pic cam prostuță. Cum poate atributul ‘href’ să fie o acțiune. Trebuie să folosiți Jquery și să dați atributul <a> sau unui tag o clasă și apoi declanșează-l, iar apoi fă:

.('TheID').on('click', function(){
      javascript:window.print();
});

Sau există o soluție și mai simplă pentru asta, puteți adăuga doar acest lucru:-

Imprimă pagina

Comentarii

  • De fapt, puteți efectua „acțiuni” javascript în atributul href, adăugându-i „javascript:”.  > Por George.