Portada | Monotemáticos | Secciones | Desarrolladores | Comunidad | Servicios | Servicios profesionales | RSS
Desde 0 | HTML | CSS | ASP | PHP | AJAX | Javascript | Promoción de webs | Rentabilidad de webs
Directorio | Manuales | Scripts | FAQs | Programas | Artículos Copyleft | Actualidad | La Cosecha | Colabora
Registrarse | Vuestras páginas | Foros del web | Lista de correo | Boletín de novedades
Generador METAs | Compras | Busca cursos
Alojamiento | Dominios.es | Micropagos SMS | Buscadores | Patentes, marcas | Creación web | Multimedia | Videos
Desarrollo Freelance | Buscar proyectos | Buscar profesionales | Solicitar desarrollo

Botón Javascript para Imprimir página web

¿Cómo puedo hacer para tener un botón en una página web que, pulsándolo, imprima dicha página web?

La FAQ Botón Javascript para Imprimir página web tiene Pertenece a la categoría:


 Respuesta de Miguel Angel Alvarez  20/7/02 
Tu respuesta es bastante simple. Debes hacerlo con Javascript, utilizando el método print del objeto window.

window.print()

Si lo deseas vincular a la pulsación de un botón quedería así:

<input type="button" name="imprimir" value="Imprimir" onclick="window.print();">

Recuerda que los botones son elementos de formulario y, por tanto, necesitan escribirse entre las etiquetas <form> y </form>.

Complementar la respuestaComplementar la respuesta
Volver al árbol de categoríasVolver al árbol de categorías

 Comentarios de los visitantes
Se muestran 14 comentarios revisados

 Comentario de Jaime
03/12/03 
En realidad, los botones, pese a ser elementos de formulario, no necesitan ser incluidos dentro de las etiquetas FORM, estas etiquetas pueden ser omitidas lo que produciria que dentro del formulario si es que existe, el boton estaria excluido

 Comentario de LorDuncan
30/9/04 
¿y que tal si continuo con la pregunta?
¿Y si no quiero que salga el boton o link, impreso en la hoja?

 Comentario de Edgar Vega Br.
29/11/04 
... lo de los forms es cierto, no tenes necesidad de crear objetos de formularios dentro de las etiquetas <form></form>.

Si es obligado cuando vas a enviar variables de un .asp a otro ...

Adios

 Comentario de Pablo
18/4/05 
Para imprimir la página sin que salga el botón "imprimir", éste debería abrir una nueva ventana con la misma página pero sin el botón, y el evento window.print() al abrirse la nueva ventana.

El botón "imprimir" sería:

<input type="button" value="IMPRIMIR" onclick="javascript:window.open('paginaImpre.htm', 'noimporta', 'width=300, height=300, scrollbars=NO')">
(los parámetros de la página, ancho y alto no importan si el objetivo es sólo la impresión)

Y paginaImpre.htm sería igual a la primera pero eliminando el botón de impresión y agregando en el body:
<BODY onload="window.print()">

 Comentario de Miguel Angel Alvarez
18/4/05 
No es necesario incluir las etiquetas <FORM> y </FORM> en muchos navegadores. Pero existen algunos navegadores donde es necesario incluiirlas, pues si no, los campos del formulario no se verían.

Por ejemplo, necesitamos incluirlas de manera forzosa en versiones antiguas de Netscape. Pero el caso es que, como algunos navegadores las necesitan, lo mejor es incluirlas siempre para que nunca haya lugar a errores.


 Comentario de Ricardo Arce
02/6/05 
Para imprimir sin que aparezca el boton imprimir, no hace falta abrir una pagina nueva, sino que se pueden utilizar hojas de estilo .css, y hacer un estilo que sea invisible a la impresora. En el .htm que hace include del nuevo .css se especifica el parámetro media como "print".

 Comentario de CPSC
10/8/05 
Tengo una página asp con menus y botones en la barra superior, que recibe y envía parámetros con el FORM y que muestra un listado. Necesito imprimir ese listado, pero que no me aparezcan los botones. Si lo envio a otra página no puedo hacer el 'submit'; si bien puedo ocultar la barra de botones antes del windos.print y luego ponerla visible de nuevo, el método es poco elegante y al usuario no le gusta. ¿Alguna sugerencia?

 Comentario de Sergi
19/9/05 
PAra imprimir sin q salgan los botones. lo suyo es utilizar etiquetas div.
<script language="JavaScript">
function doPrint(){
document.all.item("noprint").style.visibility='hidden'
window.print()
document.all.item("noprint").style.visibility='visible'
}
</script>
<form....>
...todo lo de aki se imprimira....
<div id=noprint>
...todo lo de aqui no se imprimira
</div>
</form>

 Comentario de Rafael
24/9/05 
También para que no te aparezca el boton, lo que ´puedes hacer es que la parte que quieres que se imprima la pondgas entre <span></span> o <div></div> y el resto en otras <span></span> y al momento de que mandas a imprimir, antes de invocar el print, ocultes los span que no necesitas que se vena involucrados en la impresión...

 Comentario de Freddy Saez
21/3/06 
Para imprimir sin INPUT's se debe hacer lo siguiente:

function doPrint(theForm) {
var i;
for(i=0; i<theForm.elements.length ; i++) {
// Agregar en esta lista de condiciones
// todos aquellos tipos de Input que se quieren ocultar
if( (theForm.elements[i].type == "submit") ||
(theForm.elements[i].type == "reset") ||
(theForm.elements[i].type == "button") )
theForm.elements[i].style.visibility = 'hidden';
}
window.print();

for(i=0; i<theForm.elements.length ; i++) {
if( (theForm.elements[i].type == "submit") ||
(theForm.elements[i].type == "reset") ||
(theForm.elements[i].type == "button") )
theForm.elements[i].style.visibility = 'visible';
}
}

Para utilizar esta función se debe definir
la siguiente declaración en la página que incluirá la
función de impresión: ...

<input type="button" value="Imprimir" name="cmdPrint" onclick="doPrint(this.form);"

Espero les sirva!!

 Comentario de Teresa
18/5/06 
lo que debes es usar un estilo para imprimir y otro para visualizar por pantalla el estilo imprimir podrias colocarle a el enlace imprimir las siguientes caracteristicas
imprimir.css
.imagen {
height: 0;
width: 0;
position: absolute;
}
normal.css
.imagen {
height: 10;
width: 10;
position: absolute;
}
en tu informe debes llamar a los dos estilos de esta forma
<link href="estilos/estilos.css" rel="stylesheet" type="text/css" media="screen" >
<link rel="stylesheet" type="text/css" href="estilos/impresion.css" media="print" >
y eso se todo

 Comentario de Manuel Fernandez
29/5/06 
Para imprimir sin que salgan los botones de imprimir se coloca el sieguiente codigo:

<script>
function window.onbeforeprint(){
noprint.style.visibility = 'hidden';
noprint.style.position = 'absolute';
}
function window.onafterprint(){
noprint.style.visibility = 'visible';
noprint.style.position = 'relative';
}
</script>
<table>
<tr>
<td id="noprint">
<input name="imprimir" type="button" onClick="window.print();" value="Imprimir">
</td>
</tr>
</table>

 Comentario de Danilo Ruano
09/8/06 
Para imprimir la pagina sin que aparezca el boton imprimir, no es necesario abrir otra ventana, puede estar el boton en la misma ventana, pero yo hago lo siguiente: mando a llamar una funcion en JavaScript y en esa funcion esta el truco:

<input name="btnImprimir" id="btnImprimir" type="button" class="button" value="Imprimir" onClick="imprime()">

Y el codigo de la funcion imprime() es:

function imprime(){
//desaparece el boton
document.getElementById("btnImprimir").style.display='none'
//se imprime la pagina
window.print()
//reaparece el boton
document.getElementById("btnImprimir").style.display='inline'
}

Cualquier duda que tengas no dudes en escribirme, creo que aqui aparece mi correo, sino, es danyruano@gmail.com

 Comentario de sandra
28/2/07 
muchas gracias sergi. tu solución sobre como imprimir una parte de la pagina sin que se imprima lo demás me ha ido muy bien

 Comentarios sin revisar
Entre los comentarios no revisados puede haber algunos interesantes que se hayan enviado recientemente.
 Se han encontrado 9 comentarios sin revisar

Ver el comentario no revisadoVer los comentarios no revisados
 
FAQ relacionadas
  + Pasar variables de ASP o PHP hacia Javascript o viceversa
  + Enviar un mismo formulario a tres frames distintos
  + Retardo en Javascript
  + Enlace múltiple
  + Redimensionar en Netscape el tamaño de la ventana
  + ¿Cuál es la diferencia entre Java y Javascript?
  + Abrir ventanas secundarias en Javascript
  + Cómo tener dos scripts en la misma página para dos navegadores
  + Enviar al navegador a otra página si no tiene habilitado Javascript
  + Abrir una ventana pequeña que quede detrás de la principal.
  + Obtener datos de una base para construir mis javascripts
  + Sustituir puntos por comas en campos numéricos
  + Inhibir una caja de texto de formulario
  + Preguntar si desea enviar realmente un formulario
  + ¿Cómo puedo abrir y cerrar un popup?
  + Menú desplegable para la navegación
  + ¿Cómo puedo maximizar el navegador automáticamente?
  + Utilizar una ventana sin menús para mi web
  + Trabajar con un botón de radio en Javascript
  + JavaScript que muestra un mensage diferente cada día
  + Ir a la página anterior al pulsar una imagen
  + Como puedo hacer una ventana de navegador barra de herramientas.
  + Deshabilitar un botón de radio
  + Evitar que pueda verse el código fuente de la página
  + Habilitar o desabilitar checkbox en función del estado de otro checkbox
  + Comprobacion de formularios
  + Evitar que pida confirmación al cerrar una ventana
  + Abrir popup desde Iframe
  + Función eval en Javascript
  + Generar un color con Javascript
  + Crear con JavaScript variables globales a todos los frames
  + Variables globales en Javascript
  + Propiedades de la clase Math de Javascript
  + Bloquear popups desde la propia web
  + Submenú en otra ventana con Javascript
  + Crear objetos con Javascript
  + Convertir una variable en constante con Javascript
  + Ayuda con Javascript
  + Borrar contenido input automaticamente
  + Utilizar Javascript en tus páginas web
  + ...

Para ver más FAQ relacionadas accede a las categorías:

Complementar la respuestaComplementar la respuesta
Volver al árbol de categoríasVolver al árbol de categorías

DesarrolloWeb.com | Copyright | Anunciese | Acerca de | Datos legales | Contacta | Por GuiarteMultimedia