簡體   English   中英

客戶端導出excel

[英]excel export in client side

在我的 js 文件中,我想使用 ExcelPlus 2.4 js 將 json 數據導出到 excel 文件。 在這里檢查http://aymkdn.github.io/ExcelPlus/ 請任何人幫助我編寫 ExcelPlus 2.4 js 語法,以便將 json 格式的數據從我的 ajax 調用成功部分導出到我的 excel。

function GetExcel() {
        $.ajax({
            type: "POST",
            url: "../TestHandler.ashx",
            contentType: "application/json; charset=utf-8",
            dataType: "json",        
            success: function (data) {
                debugger;

                ***var ep = new ExcelPlus();
                ep.createFile("Book1")
                  .write({ "content": data })**
                  .createSheet("Book2")
                  .write({ "cell": "A1", "content": "A1" })
                  .write({ "sheet": "Book1", "cell": "D1", "content": new Date() })
                  .saveAs("demo.xlsx");*


                alert('success');
            },
            error: function (xhr, ajaxOptions, thrownError) {
                alert("error");
            }
        });
    }

請幫我找到將 json 數據導出到 excel (xls/xlsx) 文件的解決方案。 請向我推薦一些具有所有瀏覽器支持的有效 javascript/jquery 插件。

嘗試這個

 function export()
 {
   var tab_text = "";
   var textRange; var j = 0;
   tab = document.getElementById('your table id '); // id of table
   for (j = 0; j < tab.rows.length; j++) {
      tab_text = tab_text + tab.rows[j].innerHTML + "</tr>";       
    }
    tab_text = tab_text + "</table>";
    tab_text = tab_text.replace(/<A[^>]*>|<\/A>/g, ""); 
    tab_text = tab_text.replace(/<img[^>]*>/gi, ""); 
    tab_text = tab_text.replace(/<input[^>]*>|<\/input>/gi, ""); 
    var ua = window.navigator.userAgent;
    var msie = ua.indexOf("MSIE ");
    if (msie > 0 || !!navigator.userAgent.match(/Trident.*rv\:11\./))            // If Internet Explorer
   {
    txtArea1.document.open("txt/html", "replace");
    txtArea1.document.write(tab_text);
    txtArea1.document.close();
    txtArea1.focus();
      sa = txtArea1.document.execCommand("SaveAs", true, "print.xls");
   }
  else                 //other browser not tested on IE 11
      sa = window.open('data:application/vnd.ms-excel,' + encodeURIComponent(tab_text));
    return (sa);
 }

您可以使用ExcellentExport.js 庫。 它有助於在客戶端(瀏覽器)中創建 XLS、XLSX 或 CSV 文件,以從 HTML 表或 JavaScript 數組中獲取數據。

https://github.com/jmaister/excellentexport/

示例代碼:

<table id="datatable">
    <tr>
        <td>100</td> <td>200</td> <td>300</td>
    </tr>
    <tr>
        <td>400</td> <td>500</td> <td>600</td>
    </tr>
</table>

<a download="somedata.xlsx" href="#" onclick="return ExcellentExport.convert({ anchor: this, filename: 'data_123.array', format: 'xlsx'},[{name: 'Sheet Name Here 1', from: {table: 'datatable'}}]);">Export to CSV</a>

注:我是ExcellentExport.js的開發者

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM