2
我想導出我的HTML表格使用本Gist給出的代碼到Excel。但在導出後,當我打開文件時,它在Excel中顯示演示頁面的html代碼。任何人都可以給出正確的javascript樣本,用於導出html表格到Excel中(應該在Office Calc中打開)。導出HTML表到excel使用javascript
編輯:附加的圖像截圖。
我想導出我的HTML表格使用本Gist給出的代碼到Excel。但在導出後,當我打開文件時,它在Excel中顯示演示頁面的html代碼。任何人都可以給出正確的javascript樣本,用於導出html表格到Excel中(應該在Office Calc中打開)。導出HTML表到excel使用javascript
編輯:附加的圖像截圖。
這裏是我做了一個功能。
加上你不想在Excel中顯示元素「刪除」級。
function exportExcel(id,name){ //<table> id and filename
var today = new Date();
var date = ('0'+today.getDate()).slice(-2)+"-"+('0'+(today.getMonth()+1)).slice(-2)+"-"+today.getFullYear();
var file_name = name+"_"+date+".xls"; //filename with current date, change if needed
var meta = '<meta http-equiv="content-type" content="text/html; charset=UTF-8" />';
var html = $("#"+id).clone();
html.find('.remove').remove(); //add the 'remove' class on elements you do not want to show in the excel
html.find('a').each(function() { //remove links, leave text only
var txt = $(this).text();
$(this).after(txt).remove();
});
html.find('input, textarea').each(function() { //replace inputs for their respectives texts
var txt = $(this).val().replace(/\r\n|\r|\n/g,"<br>");
$(this).after(txt).remove();
});
html.find('select').each(function() { //replace selects for their selected option text
var txt = $(this).find('option:selected').text();
$(this).after(txt).remove();
});
html.find('br').attr('style', "mso-data-placement:same-cell"); //make line breaks show in single cell
html = "<table>"+html.html()+"</table>";
var uri = 'data:application/vnd.ms-excel,'+encodeURIComponent(meta+html);
var a = $("<a>", {href: uri, download: file_name});
$(a)[0].click();
}
調用它的事件,例如:
$("#export_button").click(function(e){
exportExcel("table_id", "filename");
});
樣品作品就好在這裏。 Win7,Google Chrome,Office 2007.我注意到,打開文件時顯示的excel消息框顯示爲:「您嘗試打開的文件'download.xls'的格式與文件擴展名指定的格式不同。在打開文件之前,文件沒有被破壞,並且來自可信來源,你現在想打開文件嗎?「 - 將文件重命名爲download.xlsx導致excel拒絕打開它。然而,因爲它代表,Excel文件看起來就像同爲HTML表格,且在細胞藍色背景(2,2) – enhzflep 2013-03-22 06:15:47
可能複製http://stackoverflow.com/questions/13710405/javascript-table-export-到Excel – Trikaldarshi 2013-03-22 06:41:39
也http://stackoverflow.com/questions/4507666/html-to-excel-export – Trikaldarshi 2013-03-22 06:42:30