Foros del Web » Programando para Internet » Javascript »

problema con la libreria jspdf

Estas en el tema de problema con la libreria jspdf en el foro de Javascript en Foros del Web. Buenas tardes estoy intentando hacer una copia de mi html y guardarla en un pdf con la libreria jspdf, desafortunadamente no me esta funcionando y ...
  #1 (permalink)  
Antiguo 07/04/2015, 12:28
Avatar de maximendez88  
Fecha de Ingreso: septiembre-2012
Ubicación: Montevideo
Mensajes: 131
Antigüedad: 11 años, 7 meses
Puntos: 3
problema con la libreria jspdf

Buenas tardes estoy intentando hacer una copia de mi html y guardarla en un pdf con la libreria jspdf, desafortunadamente no me esta funcionando y no me doy cuenta que estoy haciendo mal... ya que con el ejemplo me funciona perfectamente pero no me trae nada en el pdf... cuando le cambio el nombre a "plantilla" deja de funcionar directamente...... dejo mi código a ver si alguien me puede ayudar

Código HTML:
Ver original
  1. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
  2. <html xmlns="http://www.w3.org/1999/xhtml">
  3. <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
  4. <title>Crear Planilla</title>
  5.  
  6.  
  7.     <script type="text/javascript" src="planilla.js"></script>
  8.     <script type="text/javascript" src="js/jquery/jquery-1.7.1.min.js"></script>
  9.     <script type="text/javascript" src="js/jquery/jquery-ui-1.8.17.custom.min.js">     </script>    
  10.     <script type="text/javascript" src="dist/jspdf.debug.js"></script>
  11.     <script type="text/javascript" src="js/basic.js"></script>
  12.  
  13.  
  14. body
  15. {
  16.     font-family:Arial, Helvetica, sans-serif;
  17. }
  18. </head>
  19.  
  20.  
  21. <center>
  22. <div id="crear">
  23.  
  24. <form enctype="multipart/form-data" method="post" target="_self" name="formplantilla" action="">
  25. <table id="tblcrear" border="1" width="800" align="center">
  26. <tr>
  27. <td>Empresa</td>
  28. <td><input type="text" id="empresa" /></td>
  29. <td></td>
  30. </tr>
  31. <tr>
  32. <td>Curso</td>
  33. <td><input type="text" id="curso" /></td>
  34. <td></td>
  35. </tr>
  36. <tr>
  37. <td>Profesor</td>
  38. <td><input type="text" id="profesor" /></td>
  39. <td></td>
  40. </tr>
  41. <tr>
  42. <td>Cantidad de alumnos</td>
  43. <td><input type="text" id="cantalumnos" onkeypress="return justNumbers(event);" /></td>
  44. <td></td>
  45. </tr>
  46. <tr>
  47. <td>Horario incio de clase (hh:mm)</td>
  48. <td>
  49. <input type="text" id="inicio" value="" maxlength="5" />
  50. </td>
  51. <td></td>
  52. </tr>
  53. <tr>
  54. <td>Horario finalización de clase (hh:mm)</td>
  55. <td>
  56. <input type="text" id="fin" value="" maxlength="5" />
  57. </td>
  58. <td></td>
  59. </tr>
  60. <tr>
  61. <td>Cantidad de Clases en el mes</td>
  62. <td>
  63. <select id="cantclases">
  64. <option value="Seleccione">Seleccione Cantidad de Clases</option>
  65.   <option value="1">1</option>
  66.   <option value="2">2</option>
  67.   <option value="3">3</option>
  68.   <option value="4">4</option>
  69.   <option value="5">5</option>
  70.   <option value="6">6</option>
  71.   <option value="7">7</option>
  72.   <option value="8">8</option>
  73.   <option value="9">9</option>
  74.   <option value="10">10</option>
  75.   <option value="11">11</option>
  76.   <option value="12">12</option>
  77.   <option value="13">13</option>
  78.   <option value="14">14</option>
  79.   <option value="15">15</option>
  80.   <option value="16">16</option>
  81.   <option value="17">17</option>
  82.   <option value="18">18</option>
  83.   <option value="19">19</option>
  84.   <option value="20">20</option>
  85.   <option value="21">21</option>
  86.   <option value="22">22</option>
  87.   <option value="23">23</option>
  88.   <option value="24">24</option>
  89.   <option value="25">25</option>
  90.   <option value="26">26</option>
  91.   <option value="27">27</option>
  92.   <option value="28">28</option>
  93.   <option value="29">29</option>
  94.   <option value="30">30</option>
  95.   <option value="31">31</option>
  96.  
  97. </td>
  98. <td></td>
  99. </tr>
  100. <tr>
  101. <td>Mes</td>
  102. <td>
  103. <select id="mes">
  104.   <option value="Seleccione">Seleccione Mes</option>
  105.   <option value="Enero">Enero</option>
  106.   <option value="Febrero">Febrero</option>
  107.   <option value="Marzo">Marzo</option>
  108.   <option value="Abril">Abril</option>
  109.   <option value="Mayo">Mayo</option>
  110.   <option value="Junio">Junio</option>
  111.   <option value="Julio">Julio</option>
  112.   <option value="Agosto">Agosto</option>
  113.   <option value="Setiembre">Setiembre</option>
  114.   <option value="Octubre">Octubre</option>
  115.   <option value="Noviembre">Noviembre</option>
  116.   <option value="Diciembre">Diciembre</option>
  117.  
  118. </td>
  119. <td></td>
  120. </tr>
  121. <tr>
  122. <td></td>
  123. <td><input type="button" id="btncrear" onclick="crearplantilla();"  value="Crear Plantilla" /></td>
  124. <td></td>
  125. </tr>
  126.  
  127. </form>
  128.  
  129. <form enctype="multipart/form-data" action="http://imagina.com.uy/crearplanilla/crearpdf.php" target="new" id="formcrearpdf" name="formcrearpdf" method="post">
  130.  
  131. <div id="plantilla">
  132.  
  133. <table id="tblmes" style="display:none;" border="0" width="800" align="center">
  134.  
  135.  
  136. <table id="tblcantclases" style="display:none;" border="1" width="800" align="center">
  137.  
  138.  
  139. <table id="tblestudiantes" style="display:none;" border="1" width="800" align="center">
  140.  
  141.  
  142. <table id="tblcalculos" style="display:none; margin-top:15px; text-align:left;" border="0" width="800" align="center">
  143.  
  144.  
  145. </div>
  146. </form>
  147. <ul style="text-align:left; margin:15px 410px; display:none;" id="especificaciones">
  148. <li>Presente: P</li>
  149. <li>Ausente:  A</li>
  150. <li>Cancelada en tiempo: C</li>
  151. <li>Cancelada sin aviso o fuera de plazo: X</li>
  152. </ul>
  153. </center>
  154. </body>
  155. </html>



Código Javascript:
Ver original
  1. function pdf() {
  2.  
  3.  
  4. var pdf1 = new jsPDF('p', 'in', 'letter')
  5.  
  6.    
  7.     , source = $('#plantilla')[0]
  8.  
  9.    
  10.     , specialElementHandlers = {
  11.         // element with id of "bypass" - jQuery style selector
  12.         '#bypassme': function(element, renderer){
  13.            
  14.             return true
  15.         }
  16.     }
  17.  
  18.    
  19.     pdf1.fromHTML(
  20.        
  21.         , 0.5 // x coord
  22.         , 0.5 // y coord
  23.         , {
  24.             'width':7.5 // max width of content on PDF
  25.             , 'elementHandlers': specialElementHandlers
  26.         }
  27.     )
  28.  
  29.     pdf1.save('planilla.pdf');
  30.  
  31.  
  32.  
  33.  
  34.  
  35. }

Última edición por maximendez88; 07/04/2015 a las 13:48
  #2 (permalink)  
Antiguo 19/09/2015, 17:26
 
Fecha de Ingreso: septiembre-2015
Mensajes: 1
Antigüedad: 8 años, 7 meses
Puntos: 0
Respuesta: problema con la libreria jspdf

Buenas tardes,


En el codigo que estas presentando veo algunos errores:

En el onclick del boton crear plantilla estas llamando la funcion crearplantilla(); y en el archivo .js no tienes ese nombre de funcion.

Una vez que cambies el nombre de la funcion por la correcta (crearplantilla), la funcion deberia tener la siguiente estrutuctura

function crearplantilla() {

var doc = new jsPDF();

// We'll make our own renderer to skip this editor
var specialElementHandlers = {
'#editor': function(element, renderer){
return true;
}
};

// All units are in the set measurement for the document
// This can be changed to "pt" (points), "mm" (Default), "cm", "in"
doc.fromHTML($('body').get(0), 15, 15, {
'width': 170,
'elementHandlers': specialElementHandlers
});

}

Saludos.


Julio Posada

Etiquetas: funcion, html, js, libreria, select
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 22:52.