欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

js導(dǎo)出格式化的excel 實例方法

 更新時間:2013年07月17日 16:16:49   作者:  
最常見的方式是使用js函數(shù)操作excle文件,這種方式可能因瀏覽器不同,存在兼容性問題。另一種簡單方法就是導(dǎo)出一個excel能識別格式的xml文件,用excel打開。
復(fù)制代碼 代碼如下:

function getTableDataByXML(inTable, inWindow) {
    var rows = 0;
    //alert("getTblData is " + inWindow);
    var tblDocument = document;
    if (!!inWindow && inWindow != "") {
        if (!document.all(inWindow)) {
            return null;
        }
        else {
            tblDocument = eval(inWindow).document;
        }
    }
    var inTbl = tblDocument.getElementById(inTable);
    var outStr = "<?xml version=\"1.0\"?>\n";
    outStr = outStr + "<?mso-application progid=\"Excel.Sheet\"?>\n";
    outStr = outStr + "<Workbook xmlns=\"urn:schemas-microsoft-com:office:spreadsheet\"";
    outStr = outStr + " xmlns:o=\"urn:schemas-microsoft-com:office:office\"";
    outStr = outStr + " xmlns:x=\"urn:schemas-microsoft-com:office:excel\"";
    outStr = outStr + " xmlns:ss=\"urn:schemas-microsoft-com:office:spreadsheet\">\n";
    outStr = outStr + "<Worksheet ss:Name=\"Sheet1\">\n";
    outStr = outStr + "<Table ss:ExpandedColumnCount=\"30\">\n";
    var re = /^[0-9]+.?[0-9]*$/; //是否為數(shù)字
    if (inTbl != null) {
        for (var j = 0; j < inTbl.rows.length; j++) {
            outStr += "<Row ss:AutoFitHeight=\"0\">\n";
            for (var i = 0; i < inTbl.rows[j].cells.length; i++) {
                if (i == 0 && rows > 0) {
                    outStr += "<Cell><Data ss:Type=\"String\"></Data></Cell>\n";
                    rows -= 1;
                }
                var cellValue = inTbl.rows[j].cells[i].innerText;
                //小于12位數(shù)字用Number
                if(re.test(cellValue) && (new String(cellValue)).length < 11){
                    outStr = outStr + "<Cell><Data ss:Type=\"Number\">" + cellValue + "</Data></Cell>\n";
                }else{
                    outStr = outStr + "<Cell><Data ss:Type=\"String\">" + cellValue + "</Data></Cell>\n";
                }
                if (inTbl.rows[j].cells[i].colSpan > 1) {
                    for (var k = 0; k < inTbl.rows[j].cells[i].colSpan - 1; k++) {
                        outStr += " <Cell><Data ss:Type=\"String\"></Data></Cell>\n";
                    }
                }
                if (i == 0) {
                    if (rows == 0 && inTbl.rows[j].cells[i].rowSpan > 1) {
                        rows = inTbl.rows[j].cells[i].rowSpan - 1;
                    }
                }
            }
            outStr += "</Row>\n";
        }
    }
    else {
        outStr = null;
        alert("你要導(dǎo)出的表不存在!!");
        return;
    }
    outStr = outStr + "</Table>\n</Worksheet>\n</Workbook>";
    return outStr;
}

上述函數(shù)原本是導(dǎo)出txt文件的函數(shù)。把excel文件另存為一個xml文件,就可得到excel能識別什么內(nèi)容格式的xml文件。

相關(guān)文章

  • 詳解uniapp的全局變量實現(xiàn)方式

    詳解uniapp的全局變量實現(xiàn)方式

    這篇文章主要介紹了詳解uniapp的全局變量實現(xiàn)方式,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2021-01-01
  • JavaScript的漂亮的代碼片段

    JavaScript的漂亮的代碼片段

    記錄我看到之后,不得不贊的代碼片段。本貼板內(nèi)容將不斷更新,歡迎關(guān)注
    2013-06-06
  • JavaScript 亂碼問題

    JavaScript 亂碼問題

    在用js寫網(wǎng)頁時,如果html等內(nèi)容全部用document.write輸出,包括<html>、<meta等標簽,當嵌套時,會出現(xiàn)輸出內(nèi)容為亂碼的問題
    2009-08-08
  • JavaScript中的事件與異常捕獲詳析

    JavaScript中的事件與異常捕獲詳析

    這篇文章主要給大家介紹了關(guān)于JavaScript中事件與異常捕獲的相關(guān)資料,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-02-02
  • js實現(xiàn)橫向拖拽導(dǎo)航條功能

    js實現(xiàn)橫向拖拽導(dǎo)航條功能

    本文主要介紹了js實現(xiàn)橫向拖拽導(dǎo)航條功能的方法。具有很好的參考價值,下面跟著小編一起來看下吧
    2017-02-02
  • JS中video標簽自動播放音視頻并繪制波形圖效果

    JS中video標簽自動播放音視頻并繪制波形圖效果

    html中的<video>標簽可以用來播放常見的音視頻格式,支持的格式包括:MP3、Ogg、WAV、AAC、MP4、WebM、AVI等,當然支持的格式也和瀏覽器和操作系統(tǒng)有關(guān),這篇文章主要介紹了video標簽自動播放音視頻并繪制波形圖,需要的朋友可以參考下
    2023-09-09
  • 詳解JavaScript 異步編程

    詳解JavaScript 異步編程

    這篇文章主要介紹了JavaScript 異步編程的相關(guān)資料,文中講解非常細致,幫助大家更好的理解學(xué)習(xí)JS,感興趣的朋友可以了解下
    2020-07-07
  • 談?wù)凧avaScript類型系統(tǒng)之Math

    談?wù)凧avaScript類型系統(tǒng)之Math

    Math 對象并不像 Date 和 String 那樣是對象的類,因此沒有構(gòu)造函數(shù) Math(),像 Math.sin() 這樣的函數(shù)只是函數(shù),不是某個對象的方法。您無需創(chuàng)建它,通過把 Math 作為對象使用就可以調(diào)用其所有屬性和方法
    2016-01-01
  • javascript寫一個ajax自動攔截并下載數(shù)據(jù)代碼實例

    javascript寫一個ajax自動攔截并下載數(shù)據(jù)代碼實例

    這篇文章主要介紹了javascript寫一個ajax自動攔截并下載數(shù)據(jù)代碼實例,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下
    2019-09-09

最新評論