Foros del Web » Programando para Internet » Javascript »

como puedo imprimir el contenido de un formulario

Estas en el tema de como puedo imprimir el contenido de un formulario en el foro de Javascript en Foros del Web. Hola, como puedo imprimir el contenido de un formulario sin todo el contorno(front, menu, etc) de la pagina en general?? Lo estoy haciendo con una ...
  #1 (permalink)  
Antiguo 13/05/2004, 13:27
 
Fecha de Ingreso: diciembre-2003
Mensajes: 212
Antigüedad: 20 años, 11 meses
Puntos: 0
como puedo imprimir el contenido de un formulario

Hola, como puedo imprimir el contenido de un formulario sin todo el contorno(front, menu, etc) de la pagina en general??
Lo estoy haciendo con una funcion que abre un popup con la informacion que yo quiero que se imprima;

function ventanaSecundaria(URL){
window.open(URL,"ventana1","width=500,height=380,t op = 15, scrollbars=NO,resizable=si,scrollbars=yes,menubar= no,toolbar=si,status=no,location=si")
}

y luego en ese popup hay un icono que llama a la funcion de imprimir:
function printf(){
window.print();
}//fin de printf

el problema es que dentro de una misma pagina tengo varios formularios, los cuales son llamados dependiendo de la opcion de busqueda seleccionada, quisiera que alguna forma le pasara el nombre del formulario (Ej. form name="form2") e imprimiera su contenido, pero nose como hacerlo??? si se puede hacer??

estaba intentando pasar una variable que indique cual es el formulario seleccionado, pero me da error..
<input name="Submit2" type="button" class="boton1" value="Imprimir" onClick="ventanaSecundaria('aiListaDispConsEquipos _imp.php')?formu=1">

espero puedan ayudarme o darme una idea de como solucionar este problema

Última edición por sofia2; 13/05/2004 a las 13:28
  #2 (permalink)  
Antiguo 14/05/2004, 04:14
Avatar de KarlanKas
Moderador extraterrestre
 
Fecha de Ingreso: diciembre-2001
Ubicación: Madrid
Mensajes: 6.987
Antigüedad: 22 años, 11 meses
Puntos: 61

Hola Sofia2, cuanto tiempo sin coincidir!

Para pasarlo como una variable en la URL. Para ello tienes que modificar un poco tu onclick. Así:

onClick="ventanaSecundaria('aiListaDispConsEquipos _imp.php?formu=1');

de forma que abra la ventana pasándole la variable formu=1. Como no sé qué forma tienes de descubrir el contenido del formulario en la pop up no puedo ayudarte ahí, pero una forma sería lo siguiente:

carteles=["Nombre: ",Edad: "."Teléfono: ", "Talla de pie: "]

formulario=opener.document.forms[<? echo $formu; ?>];

for(a=0;a<formulario.elements.length;a++){
document.write(carteles[a]+formulario.elements[a].value+"<br>");
}
window.print();


En carteles pondrías los carteles que deben anteceder a cada valor.

Confío en que lo entiendas. Si no es así pregunta.

Un saludo!
__________________
Cómo escribir

No hay pregunta tonta, sino tonto que quiere seguir en la ignorancia.

Última edición por KarlanKas; 14/05/2004 a las 04:18
  #3 (permalink)  
Antiguo 15/05/2004, 13:02
 
Fecha de Ingreso: diciembre-2003
Mensajes: 212
Antigüedad: 20 años, 11 meses
Puntos: 0
Hola, gracias por tu respuesta, pero aun tengo una pregunta, dentro de carteles podria pasarle el contenido de una tabla hecha en html?? porque como no es un objeto como tal que pueda referenciar como el ejemplo que me das??
carteles[a]+formulario.elements[a].value+"<br>");

sera que se puede??
  #4 (permalink)  
Antiguo 16/05/2004, 14:59
Avatar de KarlanKas
Moderador extraterrestre
 
Fecha de Ingreso: diciembre-2001
Ubicación: Madrid
Mensajes: 6.987
Antigüedad: 22 años, 11 meses
Puntos: 61
Entonces te recomiendo que en vez de pasar el nombre del formulario (o su número) pasa el ID de la tabla que lo contenga:

onClick="ventanaSecundaria('aiListaDispConsEquipos _imp.php?tabla=primera');

Luego pon dentro del Body de la popup:

document.write(opener.document.getElementById(tabl a).outerHTML);

Así escribirás toda la tabla.

A ver si así te resulta...
__________________
Cómo escribir

No hay pregunta tonta, sino tonto que quiere seguir en la ignorancia.
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 18:47.