2015-09-15 8 views
7

tabella HTML StrutturajQuery - Esporta tabella HTML con struttura ad albero in PDF/Excel

<table width="100%" border="0" name="tableID" id="activity" class="table table-striped"> 
<thead> 
    <tr> 
     <th style="height:24px !important" class="ui-state-default ui-th-column ui-th-ltr">Name</th> 
     <th class="ui-state-default ui-th-column ui-th-ltr">Category</th> 
     <th class="ui-state-default ui-th-column ui-th-ltr">Created</th> 
     <th class="ui-state-default ui-th-column ui-th-ltr">Status</th> 
     <th class="ui-state-default ui-th-column ui-th-ltr">Hours</th> 
     <th class="ui-state-default ui-th-column ui-th-ltr">Action</th> 
    </tr> 
</thead> 
<tbody><tr style="border:1px solid #ccc"><td style="border:1px solid #ccc"><span style="font-weight:bold;font-size:13px;padding-left:20px;color:#ff7a85">Development</span></td><td style="border:1px solid #ccc">Development</td><td style="border:1px solid #ccc">John Doe</td><td style="border:1px solid #ccc">Active</td><td style="border:1px solid #ccc">0</td><td style="border:1px solid #ccc"><a href="http://10.103.3.96/timesheet_bijal/manage/edittask/index?project_id=478&amp;id=130">Edit</a>/<a onclick="delete_task(130,0,478)" style="cursor:pointer">Deactivate</a> </td></tr><tr style="border:1px solid #ccc"><td style="border:1px solid #ccc"><span style="font-weight:bold;font-size:13px;padding-left:40px;color:#0074a2">Bug fixing</span></td><td style="border:1px solid #ccc">Development</td><td style="border:1px solid #ccc">John Doe</td><td style="border:1px solid #ccc">Active</td><td style="border:1px solid #ccc">120</td><td style="border:1px solid #ccc"><a href="http://10.103.3.96/timesheet_bijal/manage/edittask/index?project_id=478&amp;id=131">Edit</a>/<a onclick="delete_task(131,130,478)" style="cursor:pointer">Deactivate</a> </td></tr><tr style="border:1px solid #ccc"><td style="border:1px solid #ccc"><span style="font-weight:bold;font-size:13px;padding-left:60px;color:#33B940">dev2</span></td><td style="border:1px solid #ccc">Development</td><td style="border:1px solid #ccc">John Doe</td><td style="border:1px solid #ccc">Active</td><td style="border:1px solid #ccc">100</td><td style="border:1px solid #ccc"><a href="http://10.103.3.96/timesheet_bijal/manage/edittask/index?project_id=478&amp;id=9309">Edit</a>/<a onclick="delete_task(9309,131,478)" style="cursor:pointer">Deactivate</a> </td></tr><tr style="border:1px solid #ccc"><td style="border:1px solid #ccc"><span style="font-weight:bold;font-size:13px;padding-left:80px;color:#ffa62f">dev3</span></td><td style="border:1px solid #ccc">Development</td><td style="border:1px solid #ccc">John Doe</td><td style="border:1px solid #ccc">Inactive</td><td style="border:1px solid #ccc">100</td><td style="border:1px solid #ccc"><a href="http://10.103.3.96/timesheet_bijal/manage/edittask/index?project_id=478&amp;id=9310">Edit</a> </td></tr><tr style="border:1px solid #ccc"><td style="border:1px solid #ccc"><span style="font-weight:bold;font-size:13px;padding-left:60px;color:#33B940">task2</span></td><td style="border:1px solid #ccc">Development</td><td style="border:1px solid #ccc">John Doe</td><td style="border:1px solid #ccc">Active</td><td style="border:1px solid #ccc">100</td><td style="border:1px solid #ccc"><a href="http://10.103.3.96/timesheet_bijal/manage/edittask/index?project_id=478&amp;id=9311">Edit</a>/<a onclick="delete_task(9311,131,478)" style="cursor:pointer">Deactivate</a> </td></tr><tr style="border:1px solid #ccc"><td style="border:1px solid #ccc"><span style="font-weight:bold;font-size:13px;padding-left:40px;color:#0074a2">Development</span></td><td style="border:1px solid #ccc">Development</td><td style="border:1px solid #ccc">John Doe</td><td style="border:1px solid #ccc">Active</td><td style="border:1px solid #ccc">60</td><td style="border:1px solid #ccc"><a href="http://10.103.3.96/timesheet_bijal/manage/edittask/index?project_id=478&amp;id=133">Edit</a>/<a onclick="delete_task(133,130,478)" style="cursor:pointer">Deactivate</a> </td></tr><tr style="border:1px solid #ccc"><td style="border:1px solid #ccc"><span style="font-weight:bold;font-size:13px;padding-left:60px;color:#33B940">testing1</span></td><td style="border:1px solid #ccc">Development</td><td style="border:1px solid #ccc">John Doe</td><td style="border:1px solid #ccc">Active</td><td style="border:1px solid #ccc">100</td><td style="border:1px solid #ccc"><a href="http://10.103.3.96/timesheet_bijal/manage/edittask/index?project_id=478&amp;id=9312">Edit</a>/<a onclick="delete_task(9312,133,478)" style="cursor:pointer">Deactivate</a> </td></tr><tr style="border:1px solid #ccc"><td style="border:1px solid #ccc"><span style="font-weight:bold;font-size:13px;padding-left:40px;color:#0074a2">dev1</span></td><td style="border:1px solid #ccc">Development</td><td style="border:1px solid #ccc">John Doe</td><td style="border:1px solid #ccc">Active</td><td style="border:1px solid #ccc">100</td><td style="border:1px solid #ccc"><a href="http://10.103.3.96/timesheet_bijal/manage/edittask/index?project_id=478&amp;id=9308">Edit</a>/<a onclick="delete_task(9308,130,478)" style="cursor:pointer">Deactivate</a> </td></tr></tbody></table> 

<table> 
    <tr id="footerExport"> 
     <td id="exportpdf"><img src="https://cdn2.iconfinder.com/data/icons/windows-8-metro-style/128/pdf.png" title="Export to PDF" /></td> 
    </tr> 
</table> 

script jQuery inclusi per HTML Esporta tabella

http://ngiriraj.com/pages/htmltable_export/demo.php 

Qui Attività di progetto sono elencati in basso a relazione genitore-figlio e mostrato in una struttura ad albero come sotto

enter image description here

Il seguente violino esporta i dati in formato PDF, ma in qualche modo la vista ad albero non viene mantenuta.

Fiddle Link

1) Come posso visualizzare i dati in formato PDF come la sua mostrato nell'immagine allegata mantenimento vista ad albero e l'ordine compito?

2) Facendo clic sull'icona PDF in fiddle viene visualizzato l'output in Firefox e non in Chrome.

3) Se non si utilizza alcun plug-in, come è possibile esportare la struttura HTML mostrata, in formato PDF/Excel mantenendo la visualizzazione ad albero?

+0

primo sguardo nella url del browser che è in dati: application/pdf; Base64, formato ed è possibile utilizzare anche Nreco generatore di pdf –

+0

@AmitSengar, sto già utilizzando un plugin come indicato nel collegamento. Inoltre, se potessi pubblicare alcuni frammenti che spiegano la tua preoccupazione, sarebbe fantastico – Slimshadddyyy

+0

devi aprire nuove finestre nel tuo caso e non vuoi usare questo plugin, quindi puoi usare il generatore di Nreco pdf per fare il pdf (potrebbe essere un'opzione per tu). chk questo "http://fiddle.jshell.net/jWAJ7/1139/show/" –

risposta

1

Questa è una soluzione, ma è un po 'caotica. Ho provato un codice speciale ACSII per anteporre spazi o tabulazioni ma non hanno funzionato. Così ho fatto questo:

$(document).ready(function() { 
    $('#exportpdf').bind('click', function (e) { 
     $(".lvl1").prepend("|"); 
     $(".lvl2").prepend("| "); 
     $(".lvl3").prepend("| "); 
     $(".lvl4").prepend("|  "); 
     $('#activity').tableExport({ type: 'pdf', escape: 'false', htmlContent:'false' }); 
     $(".lvl1").text().substr(1); 
     $(".lvl2").text().substr(3); 
     $(".lvl3").text().substr(5); 
     $(".lvl4").text().substr(8); 
    }); 
}); 

Questo fa precedere il testo poco prima della generazione di PDF con un | (può essere qualsiasi carattere dalla tastiera) e alcuni spazi finali. In questo modo la tua relazione genitore/figlio è visibile nel file pdf, ma ha un | su ogni fila di tavoli.

Inoltre, è necessario aggiungere la classe 'livello' a ciascuna riga. Con lvl1 per essere il genitore superiore e lvl 4 per essere il bambino più basso.

<span style="font-weight:bold;..." class="lvl1">Development</span> 

E per rimuovere gli spazi quando viene generato il pdf è necessario utilizzare substr. Il numero è il carattere da cui iniziare (basato su zero, quindi 1 è il secondo carattere di una stringa). Spero che questo risolva la tua soluzione.

Problemi correlati