Impresión

julio81
25 de Febrero del 2005
Hola forofos:

Quisiera saber como puedo imprimir el frame secundario. Se que para imprimir se usa la sentencia "window.print" pero no funciona. He colocado en la cabecera del documento(<HEAD>) el atributo "<base target='secundario'", pero no funciona.

Gracias anticipadamente.

Calem
25 de Febrero del 2005
Mira para que imprimas un frame determinado desde otro frame haces lo sgte:

en tu pagina principal crea :
<html>
<head>
<title>Calem Sample</title>
</head>
<frameset rows="95,*" border="0">
<frame name="mainbodya" src="body1.html" >
<frame name="mainbodyb" src="body2.html" >
</frameset>
</html>
tienes 2 nombres para los frames mainbodya y mainbodyb.

Ahora creas un valida.js ya que manejar archivos externos es mucho mejor y no llenar toda tu pagina de codigo:
Crea una funcion desde valida.js donde colocaras este código:
<!-- Begin
//Imprime un frame determinado
function fncPrintframe(e){
parent.mainbodyb.frmlist.submit()
parent.mainbodyb.focus();
parent.mainbodyb.print();
}
le pongo mainbodyb que es el nombre de mi frame y es lo que imprimirá segun la pagina que este dentro de ese frame.

Ahora en tu pagina body1.html pones entre los head
<script type='text/javascript' src='js/validations.js'></script>
luego en el body creas un boton
y pones <input type="button" class="btncontrol" name="btnprint" value="Print" onClick="return fncPrintframe(event);void(0);">

y por ultimo en la pagina body2.html pones:
<form name="frmlist">
contenido
</form>

Eso es todo. Te debe salir ya que lo uso.

Saludos
Calem