2017-09-26 1 views
-1

Ich habe zwei jquery ui tabs, mit jeweils eine html-tabelle darin, dieses script lädt nur die beide die tabelle, wie mache ich es nur die aktive tab-tabelle herunterladen zu übertreffen?html tabelle herunterladen als xlsx

$("#btnExport").click(function(e) { 
      e.preventDefault(); 
      //getting data from our table 
      var data_type = 'data:application/vnd.ms-excel'; 
      var table_div = document.getElementById('tabs'); 
      var table_html = table_div.outerHTML.replace(/ /g, '%20'); 

      var a = document.createElement('a'); 
      a.href = data_type + ', ' + table_html; 
      a.download = 'exported_table_' + Math.floor((Math.random() * 9999999) + 1000000) + '.xlsx'; 
      a.click(); 
      }); 

Fiddle Link: https://jsfiddle.net/d19918/nz1yc3x0/10/

+1

dieser aweful Code ist. Dies ist gemischt Vanille, gemischte jquery und überhaupt kein Java :) – Alex

Antwort

2

Sie müssen nur die richtige Registerkarte erhalten:

var table_div = document.querySelector("#tabs [aria-hidden='false']"); 

Demo: https://jsfiddle.net/nz1yc3x0/13/

+0

nach dem Download als Excel, Name und ID sind unten gedruckt, wo es in der ersten Zeile sein sollte –

+0

Es ist. Und es war immer so von Anfang an, denn Sie haben die '' zuletzt nach allen Zeilen hinzugefügt. Wenn die Kopfzeile im exportierten Excel angezeigt werden soll, fügen Sie sie zuerst hinzu, bevor Sie die Zeilen hinzufügen: https://jsfiddle.net/nz1yc3x0/14/ – AVAVT

Verwandte Themen