jueves, 23 de julio de 2009

Imprimir contenido de un WebPart con JavaScript

Paso 1: Con el SharePoint Designer editar la página que contiene el webpart y en el tag <asp:Content ContentPlaceHolderId="PlaceHolderAdditionalPageHead" runat="server"> agregar el siguiente javascript:


<script>

function printSpecial()

{
var html = '<HTML>\n<HEAD>\n';

if (document.getElementsByTagName != null)
{
var headTags = document.getElementsByTagName("head");

if (headTags.length > 0)
html += headTags[0].innerHTML;
}
html += '\n</HEAD>\n<BODY>\n';
var printReadyElem = document.getElementById("printPart");

if (printReadyElem != null)
{
html += printReadyElem.innerHTML;
}
else
{
alert("Could not find the printPart div");return;
}
html += '\n</BODY>\n</HTML>';
var printWin = window.open("","printSpecial");
printWin.document.open();
printWin.document.write(html);
printWin.document.close();
printWin.print();
}

</script>

Paso 2: Encerrar la zona que queremos imprimir con lo siguiente:
<div id='printPart'> WEBPART </div>

Paso 3:
Crear el boton de impresion llamando al metodo de javascript:
Las que mas les guste:
<a href="javascript:void(printSpecial())">Print this Page</a>

<input type="button" name="printMe" onClick="printSpecial()" value="Print this Page">

Eso es todo!!