Advertisement
Guest User

add row to datables export csv and excel

a guest
Feb 1st, 2017
493
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
HTML 17.16 KB | None | 0 0
  1. <!-- http://stackoverflow.com/questions/41845757/how-to-export-search-criteria-to-excel-csv-in-jquery-datatable -->
  2. <!DOCTYPE html>
  3. <html>
  4. <head>
  5. <title>test</title>
  6. <link rel="stylesheet" type="text/css" href="https://cdn.datatables.net/1.10.13/css/jquery.dataTables.min.css"/>
  7. <link rel="stylesheet" type="text/css" href="https://cdn.datatables.net/buttons/1.2.4/css/buttons.dataTables.min.css"/>
  8.  
  9. <script src="//code.jquery.com/jquery-1.12.4.js"></script>
  10. <script src="https://cdn.datatables.net/1.10.13/js/jquery.dataTables.min.js"></script>
  11. <script src="https://cdn.datatables.net/buttons/1.2.4/js/dataTables.buttons.min.js"></script>
  12. <script src="//cdn.datatables.net/buttons/1.2.4/js/buttons.flash.min.js"></script>
  13. <script src="//cdnjs.cloudflare.com/ajax/libs/jszip/2.5.0/jszip.min.js"></script>
  14. <script src="//cdn.rawgit.com/bpampuch/pdfmake/0.1.18/build/pdfmake.min.js"></script>
  15. <script src="//cdn.rawgit.com/bpampuch/pdfmake/0.1.18/build/vfs_fonts.js"></script>
  16. <script src="//cdn.datatables.net/buttons/1.2.4/js/buttons.html5.min.js"></script>
  17. <script src="//cdn.datatables.net/buttons/1.2.4/js/buttons.print.min.js"></script>
  18.  
  19.  
  20. <script>
  21. $(document).ready(function() {
  22.     $('#employee-grid').DataTable( {
  23.         dom: 'Bfrtip',
  24.         buttons: [
  25.             {
  26.                 extend: 'csvHtml5',
  27.                 filename:'EmployeeList',
  28.                 customize: function( csv ) {
  29.                     var office = $('#officeId :selected').text();
  30.                     var department = $('#officeId :selected').text();
  31.                     var search = $('.dataTables_filter input').val();
  32.                     return "Office: "+ office +"\n"+"Department: "+department+"\n"+"Search Keyword: "+search+"\n\n"+  csv;
  33.                 }
  34.             },
  35.             {
  36.                 extend: 'excelHtml5',
  37.                 filename:'EmployeeList',
  38.                 customize: function( xlsx ) {
  39.                     var office = $('#officeId :selected').text();
  40.                     var department = $('#officeId :selected').text();
  41.                     var search = $('.dataTables_filter input').val();
  42.                     var search = $('.dataTables_filter input').val();
  43.                     var sheet = xlsx.xl.worksheets['sheet1.xml'];
  44.                     var downrows = 4; //number of rows for heading
  45.                     var clRow = $('row', sheet);
  46.                     //update Row
  47.                     clRow.each(function () {
  48.                         var attr = $(this).attr('r');
  49.                         var ind = parseInt(attr);
  50.                         ind = ind + downrows;
  51.                         $(this).attr("r",ind);
  52.                     });
  53.              
  54.                     // Update  row > c
  55.                     $('row c ', sheet).each(function () {
  56.                         var attr = $(this).attr('r');
  57.                         var pre = attr.substring(0, 1);
  58.                         var ind = parseInt(attr.substring(1, attr.length));
  59.                         ind = ind + downrows;
  60.                         $(this).attr("r", pre + ind);
  61.                     });
  62.              
  63.     function Addrow(index,data) {
  64.         msg='<row r="'+index+'">'
  65.         for(i=0;i<data.length;i++){
  66.             var key=data[i].k;
  67.             var value=data[i].v;
  68.             msg += '<c t="inlineStr" r="' + key + index + '" s="0">';
  69.             msg += '<is>';
  70.             msg +=  '<t>'+value+'</t>';
  71.             msg+=  '</is>';
  72.             msg+='</c>';
  73.         }
  74.         msg += '</row>';
  75.         return msg;
  76.     }
  77.                    
  78.              
  79.                     //insert
  80.                     var newline = Addrow(1, [{ k: 'A', v: 'Office: ' + office}]);
  81.                     newline += Addrow(2, [{ k: 'A', v: 'Department: ' + department}]);
  82.                     newline += Addrow(3, [{ k: 'A', v: 'Search Keyword: ' + search}]);
  83.                    
  84.                     sheet.childNodes[0].childNodes[1].innerHTML = newline + sheet.childNodes[0].childNodes[1].innerHTML;
  85.                 }
  86.             }
  87.          ] 
  88.     });
  89.    
  90. });
  91. </script>
  92. </head>
  93. <body>
  94. <table class="table table-form">
  95.    
  96.     <tbody>
  97.     <tr>
  98.         <td class="control-label">Office</td>
  99.         <td>
  100.             <select id="officeId" name="office">
  101.                 <option value="0">ALL</option>
  102.                 <option value="108">Bangalore</option>
  103.                 <option value="109">Mumbai</option>
  104.                 <option value="110">Pune</option>
  105.                                         </select>
  106.                       </td>
  107.                   </tr>
  108.       <tr>
  109.         <td class="control-label">Department</td>
  110.         <td>
  111.             <select id="departmentId" name="department">
  112.                 <option value="0">ALL</option>
  113.                 <option value="118">IT</option>
  114.                 <option value="119">HR</option>
  115.                 <option value="120">Operations</option>
  116. </select>
  117.                   </td>
  118.          </tr>
  119.       </tbody>
  120. </table>  
  121. <hr>
  122.  
  123.  
  124. <table id="employee-grid" class="display nowrap" width="100%" cellspacing="0">
  125.     <thead>
  126.         <tr>
  127.             <th>Name</th>
  128.             <th>Position</th>
  129.             <th>Office</th>
  130.             <th>Age</th>
  131.             <th>Start date</th>
  132.             <th>Salary</th>
  133.         </tr>
  134.     </thead>
  135.     <tfoot>
  136.         <tr>
  137.             <th>Name</th>
  138.             <th>Position</th>
  139.             <th>Office</th>
  140.             <th>Age</th>
  141.             <th>Start date</th>
  142.             <th>Salary</th>
  143.         </tr>
  144.     </tfoot>
  145.     <tbody>
  146.         <tr>
  147.             <td>Tiger Nixon</td>
  148.             <td>System Architect</td>
  149.             <td>Edinburgh</td>
  150.             <td>61</td>
  151.             <td>2011/04/25</td>
  152.             <td>$320,800</td>
  153.         </tr>
  154.         <tr>
  155.             <td>Garrett Winters</td>
  156.             <td>Accountant</td>
  157.             <td>Tokyo</td>
  158.             <td>63</td>
  159.             <td>2011/07/25</td>
  160.             <td>$170,750</td>
  161.         </tr>
  162.         <tr>
  163.             <td>Ashton Cox</td>
  164.             <td>Junior Technical Author</td>
  165.             <td>San Francisco</td>
  166.             <td>66</td>
  167.             <td>2009/01/12</td>
  168.             <td>$86,000</td>
  169.         </tr>
  170.         <tr>
  171.             <td>Cedric Kelly</td>
  172.             <td>Senior Javascript Developer</td>
  173.             <td>Edinburgh</td>
  174.             <td>22</td>
  175.             <td>2012/03/29</td>
  176.             <td>$433,060</td>
  177.         </tr>
  178.         <tr>
  179.             <td>Airi Satou</td>
  180.             <td>Accountant</td>
  181.             <td>Tokyo</td>
  182.             <td>33</td>
  183.             <td>2008/11/28</td>
  184.             <td>$162,700</td>
  185.         </tr>
  186.         <tr>
  187.             <td>Brielle Williamson</td>
  188.             <td>Integration Specialist</td>
  189.             <td>New York</td>
  190.             <td>61</td>
  191.             <td>2012/12/02</td>
  192.             <td>$372,000</td>
  193.         </tr>
  194.         <tr>
  195.             <td>Herrod Chandler</td>
  196.             <td>Sales Assistant</td>
  197.             <td>San Francisco</td>
  198.             <td>59</td>
  199.             <td>2012/08/06</td>
  200.             <td>$137,500</td>
  201.         </tr>
  202.         <tr>
  203.             <td>Rhona Davidson</td>
  204.             <td>Integration Specialist</td>
  205.             <td>Tokyo</td>
  206.             <td>55</td>
  207.             <td>2010/10/14</td>
  208.             <td>$327,900</td>
  209.         </tr>
  210.         <tr>
  211.             <td>Colleen Hurst</td>
  212.             <td>Javascript Developer</td>
  213.             <td>San Francisco</td>
  214.             <td>39</td>
  215.             <td>2009/09/15</td>
  216.             <td>$205,500</td>
  217.         </tr>
  218.         <tr>
  219.             <td>Sonya Frost</td>
  220.             <td>Software Engineer</td>
  221.             <td>Edinburgh</td>
  222.             <td>23</td>
  223.             <td>2008/12/13</td>
  224.             <td>$103,600</td>
  225.         </tr>
  226.         <tr>
  227.             <td>Jena Gaines</td>
  228.             <td>Office Manager</td>
  229.             <td>London</td>
  230.             <td>30</td>
  231.             <td>2008/12/19</td>
  232.             <td>$90,560</td>
  233.         </tr>
  234.         <tr>
  235.             <td>Quinn Flynn</td>
  236.             <td>Support Lead</td>
  237.             <td>Edinburgh</td>
  238.             <td>22</td>
  239.             <td>2013/03/03</td>
  240.             <td>$342,000</td>
  241.         </tr>
  242.         <tr>
  243.             <td>Charde Marshall</td>
  244.             <td>Regional Director</td>
  245.             <td>San Francisco</td>
  246.             <td>36</td>
  247.             <td>2008/10/16</td>
  248.             <td>$470,600</td>
  249.         </tr>
  250.         <tr>
  251.             <td>Haley Kennedy</td>
  252.             <td>Senior Marketing Designer</td>
  253.             <td>London</td>
  254.             <td>43</td>
  255.             <td>2012/12/18</td>
  256.             <td>$313,500</td>
  257.         </tr>
  258.         <tr>
  259.             <td>Tatyana Fitzpatrick</td>
  260.             <td>Regional Director</td>
  261.             <td>London</td>
  262.             <td>19</td>
  263.             <td>2010/03/17</td>
  264.             <td>$385,750</td>
  265.         </tr>
  266.         <tr>
  267.             <td>Michael Silva</td>
  268.             <td>Marketing Designer</td>
  269.             <td>London</td>
  270.             <td>66</td>
  271.             <td>2012/11/27</td>
  272.             <td>$198,500</td>
  273.         </tr>
  274.         <tr>
  275.             <td>Paul Byrd</td>
  276.             <td>Chief Financial Officer (CFO)</td>
  277.             <td>New York</td>
  278.             <td>64</td>
  279.             <td>2010/06/09</td>
  280.             <td>$725,000</td>
  281.         </tr>
  282.         <tr>
  283.             <td>Gloria Little</td>
  284.             <td>Systems Administrator</td>
  285.             <td>New York</td>
  286.             <td>59</td>
  287.             <td>2009/04/10</td>
  288.             <td>$237,500</td>
  289.         </tr>
  290.         <tr>
  291.             <td>Bradley Greer</td>
  292.             <td>Software Engineer</td>
  293.             <td>London</td>
  294.             <td>41</td>
  295.             <td>2012/10/13</td>
  296.             <td>$132,000</td>
  297.         </tr>
  298.         <tr>
  299.             <td>Dai Rios</td>
  300.             <td>Personnel Lead</td>
  301.             <td>Edinburgh</td>
  302.             <td>35</td>
  303.             <td>2012/09/26</td>
  304.             <td>$217,500</td>
  305.         </tr>
  306.         <tr>
  307.             <td>Jenette Caldwell</td>
  308.             <td>Development Lead</td>
  309.             <td>New York</td>
  310.             <td>30</td>
  311.             <td>2011/09/03</td>
  312.             <td>$345,000</td>
  313.         </tr>
  314.         <tr>
  315.             <td>Yuri Berry</td>
  316.             <td>Chief Marketing Officer (CMO)</td>
  317.             <td>New York</td>
  318.             <td>40</td>
  319.             <td>2009/06/25</td>
  320.             <td>$675,000</td>
  321.         </tr>
  322.         <tr>
  323.             <td>Caesar Vance</td>
  324.             <td>Pre-Sales Support</td>
  325.             <td>New York</td>
  326.             <td>21</td>
  327.             <td>2011/12/12</td>
  328.             <td>$106,450</td>
  329.         </tr>
  330.         <tr>
  331.             <td>Doris Wilder</td>
  332.             <td>Sales Assistant</td>
  333.             <td>Sidney</td>
  334.             <td>23</td>
  335.             <td>2010/09/20</td>
  336.             <td>$85,600</td>
  337.         </tr>
  338.         <tr>
  339.             <td>Angelica Ramos</td>
  340.             <td>Chief Executive Officer (CEO)</td>
  341.             <td>London</td>
  342.             <td>47</td>
  343.             <td>2009/10/09</td>
  344.             <td>$1,200,000</td>
  345.         </tr>
  346.         <tr>
  347.             <td>Gavin Joyce</td>
  348.             <td>Developer</td>
  349.             <td>Edinburgh</td>
  350.             <td>42</td>
  351.             <td>2010/12/22</td>
  352.             <td>$92,575</td>
  353.         </tr>
  354.         <tr>
  355.             <td>Jennifer Chang</td>
  356.             <td>Regional Director</td>
  357.             <td>Singapore</td>
  358.             <td>28</td>
  359.             <td>2010/11/14</td>
  360.             <td>$357,650</td>
  361.         </tr>
  362.         <tr>
  363.             <td>Brenden Wagner</td>
  364.             <td>Software Engineer</td>
  365.             <td>San Francisco</td>
  366.             <td>28</td>
  367.             <td>2011/06/07</td>
  368.             <td>$206,850</td>
  369.         </tr>
  370.         <tr>
  371.             <td>Fiona Green</td>
  372.             <td>Chief Operating Officer (COO)</td>
  373.             <td>San Francisco</td>
  374.             <td>48</td>
  375.             <td>2010/03/11</td>
  376.             <td>$850,000</td>
  377.         </tr>
  378.         <tr>
  379.             <td>Shou Itou</td>
  380.             <td>Regional Marketing</td>
  381.             <td>Tokyo</td>
  382.             <td>20</td>
  383.             <td>2011/08/14</td>
  384.             <td>$163,000</td>
  385.         </tr>
  386.         <tr>
  387.             <td>Michelle House</td>
  388.             <td>Integration Specialist</td>
  389.             <td>Sidney</td>
  390.             <td>37</td>
  391.             <td>2011/06/02</td>
  392.             <td>$95,400</td>
  393.         </tr>
  394.         <tr>
  395.             <td>Suki Burks</td>
  396.             <td>Developer</td>
  397.             <td>London</td>
  398.             <td>53</td>
  399.             <td>2009/10/22</td>
  400.             <td>$114,500</td>
  401.         </tr>
  402.         <tr>
  403.             <td>Prescott Bartlett</td>
  404.             <td>Technical Author</td>
  405.             <td>London</td>
  406.             <td>27</td>
  407.             <td>2011/05/07</td>
  408.             <td>$145,000</td>
  409.         </tr>
  410.         <tr>
  411.             <td>Gavin Cortez</td>
  412.             <td>Team Leader</td>
  413.             <td>San Francisco</td>
  414.             <td>22</td>
  415.             <td>2008/10/26</td>
  416.             <td>$235,500</td>
  417.         </tr>
  418.         <tr>
  419.             <td>Martena Mccray</td>
  420.             <td>Post-Sales support</td>
  421.             <td>Edinburgh</td>
  422.             <td>46</td>
  423.             <td>2011/03/09</td>
  424.             <td>$324,050</td>
  425.         </tr>
  426.         <tr>
  427.             <td>Unity Butler</td>
  428.             <td>Marketing Designer</td>
  429.             <td>San Francisco</td>
  430.             <td>47</td>
  431.             <td>2009/12/09</td>
  432.             <td>$85,675</td>
  433.         </tr>
  434.         <tr>
  435.             <td>Howard Hatfield</td>
  436.             <td>Office Manager</td>
  437.             <td>San Francisco</td>
  438.             <td>51</td>
  439.             <td>2008/12/16</td>
  440.             <td>$164,500</td>
  441.         </tr>
  442.         <tr>
  443.             <td>Hope Fuentes</td>
  444.             <td>Secretary</td>
  445.             <td>San Francisco</td>
  446.             <td>41</td>
  447.             <td>2010/02/12</td>
  448.             <td>$109,850</td>
  449.         </tr>
  450.         <tr>
  451.             <td>Vivian Harrell</td>
  452.             <td>Financial Controller</td>
  453.             <td>San Francisco</td>
  454.             <td>62</td>
  455.             <td>2009/02/14</td>
  456.             <td>$452,500</td>
  457.         </tr>
  458.         <tr>
  459.             <td>Timothy Mooney</td>
  460.             <td>Office Manager</td>
  461.             <td>London</td>
  462.             <td>37</td>
  463.             <td>2008/12/11</td>
  464.             <td>$136,200</td>
  465.         </tr>
  466.         <tr>
  467.             <td>Jackson Bradshaw</td>
  468.             <td>Director</td>
  469.             <td>New York</td>
  470.             <td>65</td>
  471.             <td>2008/09/26</td>
  472.             <td>$645,750</td>
  473.         </tr>
  474.         <tr>
  475.             <td>Olivia Liang</td>
  476.             <td>Support Engineer</td>
  477.             <td>Singapore</td>
  478.             <td>64</td>
  479.             <td>2011/02/03</td>
  480.             <td>$234,500</td>
  481.         </tr>
  482.         <tr>
  483.             <td>Bruno Nash</td>
  484.             <td>Software Engineer</td>
  485.             <td>London</td>
  486.             <td>38</td>
  487.             <td>2011/05/03</td>
  488.             <td>$163,500</td>
  489.         </tr>
  490.         <tr>
  491.             <td>Sakura Yamamoto</td>
  492.             <td>Support Engineer</td>
  493.             <td>Tokyo</td>
  494.             <td>37</td>
  495.             <td>2009/08/19</td>
  496.             <td>$139,575</td>
  497.         </tr>
  498.         <tr>
  499.             <td>Thor Walton</td>
  500.             <td>Developer</td>
  501.             <td>New York</td>
  502.             <td>61</td>
  503.             <td>2013/08/11</td>
  504.             <td>$98,540</td>
  505.         </tr>
  506.         <tr>
  507.             <td>Finn Camacho</td>
  508.             <td>Support Engineer</td>
  509.             <td>San Francisco</td>
  510.             <td>47</td>
  511.             <td>2009/07/07</td>
  512.             <td>$87,500</td>
  513.         </tr>
  514.         <tr>
  515.             <td>Serge Baldwin</td>
  516.             <td>Data Coordinator</td>
  517.             <td>Singapore</td>
  518.             <td>64</td>
  519.             <td>2012/04/09</td>
  520.             <td>$138,575</td>
  521.         </tr>
  522.         <tr>
  523.             <td>Zenaida Frank</td>
  524.             <td>Software Engineer</td>
  525.             <td>New York</td>
  526.             <td>63</td>
  527.             <td>2010/01/04</td>
  528.             <td>$125,250</td>
  529.         </tr>
  530.         <tr>
  531.             <td>Zorita Serrano</td>
  532.             <td>Software Engineer</td>
  533.             <td>San Francisco</td>
  534.             <td>56</td>
  535.             <td>2012/06/01</td>
  536.             <td>$115,000</td>
  537.         </tr>
  538.         <tr>
  539.             <td>Jennifer Acosta</td>
  540.             <td>Junior Javascript Developer</td>
  541.             <td>Edinburgh</td>
  542.             <td>43</td>
  543.             <td>2013/02/01</td>
  544.             <td>$75,650</td>
  545.         </tr>
  546.         <tr>
  547.             <td>Cara Stevens</td>
  548.             <td>Sales Assistant</td>
  549.             <td>New York</td>
  550.             <td>46</td>
  551.             <td>2011/12/06</td>
  552.             <td>$145,600</td>
  553.         </tr>
  554.         <tr>
  555.             <td>Hermione Butler</td>
  556.             <td>Regional Director</td>
  557.             <td>London</td>
  558.             <td>47</td>
  559.             <td>2011/03/21</td>
  560.             <td>$356,250</td>
  561.         </tr>
  562.         <tr>
  563.             <td>Lael Greer</td>
  564.             <td>Systems Administrator</td>
  565.             <td>London</td>
  566.             <td>21</td>
  567.             <td>2009/02/27</td>
  568.             <td>$103,500</td>
  569.         </tr>
  570.         <tr>
  571.             <td>Jonas Alexander</td>
  572.             <td>Developer</td>
  573.             <td>San Francisco</td>
  574.             <td>30</td>
  575.             <td>2010/07/14</td>
  576.             <td>$86,500</td>
  577.         </tr>
  578.         <tr>
  579.             <td>Shad Decker</td>
  580.             <td>Regional Director</td>
  581.             <td>Edinburgh</td>
  582.             <td>51</td>
  583.             <td>2008/11/13</td>
  584.             <td>$183,000</td>
  585.         </tr>
  586.         <tr>
  587.             <td>Michael Bruce</td>
  588.             <td>Javascript Developer</td>
  589.             <td>Singapore</td>
  590.             <td>29</td>
  591.             <td>2011/06/27</td>
  592.             <td>$183,000</td>
  593.         </tr>
  594.         <tr>
  595.             <td>Donna Snider</td>
  596.             <td>Customer Support</td>
  597.             <td>New York</td>
  598.             <td>27</td>
  599.             <td>2011/01/25</td>
  600.             <td>$112,000</td>
  601.         </tr>
  602.     </tbody>
  603. </table>
  604. </body>
  605. </html>
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement