2013-08-12 2 views
2

У меня есть html-страница с таблицей, которая заполняется динамически. Мне нужно поставить две кнопки ниже, что позволяет экспортировать данные структуры таблицы в Excel и PDF.Как экспортировать таблицу html в excel или pdf в HTML-страницу через jQuery/JavaScript?

Каков наилучший/простой способ реализовать это?

Предпочитаю некоторое решение Javascript/jQuery. Я видел DocRaptor, но я думаю, что это платная услуга. Мне нужно что-то подобное, которое работает в браузере IE8. Пожалуйста помоги !

ответ

4

TableTools является плагином для HTML-энхансера таблиц DataTables, который добавляет настраиваемую панель инструментов к DataTable. Основные функции включают в себя:

  • Копировать в буфер обмена
  • Сохранить данные таблицы как CSV, XLS или PDF файлы
  • вид печати для чистой печати
  • варианты выбора строки
  • Легко использовать предопределенные кнопки
  • Простая настройка кнопок
  • Хорошо определенный API для расширенного управления
+0

Не отображает выход HTML, например, полужирный или ПОДЧЕРКНИ или маркированного списка в ячейке таблицы. – SearchForKnowledge

3
$("button").click(function() { 
    var str=""; 
    $('tr').each(function() { 

     $(this).find('td').each(function() { 

     str=str+$(this).html()+"\t"; 
    }); 
     str=str+"\n"; 

    }); 

    alert(str); 

     window.open('data:application/vnd.ms-excel,' + encodeURIComponent(str)); 
    }); 

http://jsfiddle.net/4Vr89/1/

+0

Я немного адаптировал его так, чтобы он имел заголовки столбцов: 'var str =" "; var id = '#review'; $ (id + 'th'). Each (function() { str + = $ (this) .text() + "\ t"; }); $ (id + 'tr'). Each (function() { $ (this) .find ('td'). Each (function() { str + = $ (this) .text() + " \ t "; }) str + =" \ n "; }); window.open ('data: application/vnd.ms-excel,' + encodeURIComponent (str)); ' –

+0

Не компилирует HTML-тег внутри, поэтому, если у меня есть тест , он показывает теги. – SearchForKnowledge

+1

@SearchForKnowledge. Если вы не хотите, чтобы html-теги отображались в выводе, вы можете использовать '$ (this) .text()' вместо '$ (this) .html()'. Насколько я знаю, если вы открываете файл '.html', используя excel, он не будет отображать теги, поэтому может быть невозможно открыть файл excel с выводом html rendered. – rps

0

FPDF является PHP класс, который позволяет генерировать PDF файлы

Смежные вопросы