亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 編程 > JavaScript > 正文

如何將網頁表格內容導入excel

2019-11-20 21:05:28
字體:
來源:轉載
供稿:網友
將訪問的頁面加入到可信任站點
復制代碼 代碼如下:

//導出到Excel,注意,表格標記內不得有注釋,因為childNodes會把注釋也算進去
//如果出錯,需要關閉Excel,否則Excel進程會一直運行著
//td中只能有一個input值
//非td間不可以有組建 否則報缺少“;”錯誤
//引用頁面加上<script type="text/javascript" src="execl.js"></script>
//添加按鈕<input style="height:26px" type="button" name="btnExcel" value="導出excel" onClick="ExportExcel(this,'tableNr','','表頭');"/>
//將table表的id和class設置為tableNr
function ExportExcel(btn,TabId,strCols,sTitle,sHeader,sFooter){
//alert('ssss');
btn.style.cursor = "wait";
event.returnValue = false;
//try{
var tab = document.getElementById(TabId);
// if(tab == null) tab = document.getElementById("dg")
//if(tab == null) tab = document.getElementById("db")
//if(tab == null) tab = document.getElementById(TabId)
if(tab == null){
alert("缺少表格對象");
btn.style.cursor = "hand";
return;
}
var t = tab.firstChild;
var rows = t.childNodes.length;
//alert(t.nodeName); //test
var tds = t.childNodes[0].childNodes.length;
var cols = 0;
for(var i=0;i<tds;i++){
var td = t.childNodes[0].childNodes[i];
if(parseInt(td.colSpan)>1){
cols += parseInt(td.colSpan);
}
else{
cols++;
}
}
try{
var oXL = new ActiveXObject("Excel.Application");
}catch(e){
alert("請確認已經安裝了Excel并允許運行Excel!");
alert("無法啟動Excel,請確保電腦中已經安裝了Excel!/n/n如果已經安裝了Excel,"+"請將ip地址加入信任站點,并調整IE信任站點的安全級別。/n/n具體操作:/n/n"+"工具 → Internet選項 → 安全 → 自定義級別 → ActiveX 控件和插件 → 對未標記為可安全執行腳本的ActiveX 控件初始化并執行腳本 → 啟用 → 確定");
btn.style.cursor = "hand";
return;
}
oXL.Workbooks.Add();
var obook = oXL.ActiveWorkBook;
var osheets = obook.Worksheets;
var osheet = obook.Sheets(1);
var xlrow = 1;
//添加標題
if((sTitle == "") || (typeof(sTitle)=="undefined") || (sTitle==null)){
var t_tdHeadc = document.getElementById("tdHeadc");
if(t_tdHeadc != null){
sTitle = t_tdHeadc.innerText;
var sk = sTitle.lastIndexOf("-->")+3;
sTitle = sTitle.substring(sk);
}
}
osheet.Cells(1, 1) = sTitle;
osheet.Range(osheet.Cells(xlrow, 1),osheet.Cells(xlrow,cols)).Select(); //選擇該列
oXL.Selection.HorizontalAlignment = 3; //居中
oXL.Selection.MergeCells = true;
xlrow++;
//小標題
if((sHeader == "") || (typeof(sHeader)=="undefined") || (sHeader==null)){
sHeader = "";
}
if(sHeader != ""){
osheet.Cells(2, 1) = sHeader;
osheet.Range(osheet.Cells(xlrow, 1),osheet.Cells(xlrow,cols)).Select(); //選擇該列
//oXL.Selection.HorizontalAlignment = 3; //居中
oXL.Selection.MergeCells = true;
xlrow++;
}
var winX = (screen.width - 300) / 2;
var winY = (screen.height - 120) / 2;

var win = window.open("","","directories=0,location=0,memubar=0,scrollbars=0,status=0,toolbar=0,width=230,height=75,left=" + winX + ",top=" + winY);
win.document.write('<html><title>' + sTitle + '導出Excel</title><body><div id="m_pub_wzs_progress_x" style="background:white;overflow:hidden;padding-top:0;display:none;position:absolute;left:10px;top:25px;"><table id="m_pub_wzs_progress_tab" border=0 cellspacing=1 bgcolor="#CCCCCC" style="display:inline;border-width:1px;border-style:solid;border-left-color:#333333;border-top-color:#333333;border-right-color:#EEEEEE;border-bottom-color:#EEEEEE;">');
win.document.write('<tr height=17><td width=4 bgcolor="#000088"></td><td width=4 bgcolor="#000088"></td><td width=4 bgcolor="#000088"></td><td width=4 bgcolor="#000088"></td><td width=4 bgcolor="#000088"></td><td width=4 bgcolor="#000088"></td><td width=4 bgcolor="#000088"></td><td width=4 bgcolor="#000088"></td><td width=4 bgcolor="#000088"></td><td width=4 bgcolor="#000088"></td><td width=4 bgcolor="#000088"></td><td width=4 bgcolor="#000088"></td><td width=4 bgcolor="#000088"></td><td width=4 bgcolor="#000088"></td><td width=4 bgcolor="#CCCCCC"></td><td width=4 bgcolor="#CCCCCC"></td><td width=4 bgcolor="#CCCCCC"></td><td width=4 bgcolor="#CCCCCC"></td><td width=4 bgcolor="#CCCCCC"></td><td width=4 bgcolor="#CCCCCC"></td><td width=4 bgcolor="#CCCCCC"></td><td width=4 bgcolor="#CCCCCC"></td><td width=4 bgcolor="#CCCCCC"></td><td width=4 bgcolor="#CCCCCC"></td><td width=4 bgcolor="#CCCCCC"></td><td width=4 bgcolor="#CCCCCC"></td><td width=4 bgcolor="#CCCCCC"></td><td width=4 bgcolor="#CCCCCC"></td><td width=4 bgcolor="#CCCCCC"></td><td width=4 bgcolor="#CCCCCC"></td>');
win.document.write('</tr></table><br><span id="m_pub_wzs_progress_percent" style="font-size:10pt;vertical-align:middle;color:black;font-family:宋體">總計' + rows + '行,已導出<font id="sx" color="#cc0000"></font>行!</span></div><br /><br /><br /><script language="javascript">var osx=document.getElementById("sx");var div = document.getElementById("m_pub_wzs_progress_x");function m_pub_wzs_progress_show(pTotalCount,pCurrCount){osx.innerText = pCurrCount;var m = Math.floor(pCurrCount / pTotalCount * 30);div.style.display = "";var tr = div.firstChild.rows[0];for(var i=0;i<tr.cells.length;i++){var td=tr.cells[i]; if(i<m) td.bgColor="#000088"; else td.bgColor="#CCCCCC";}}function m_pub_wzs_progress_hide(){ var div = document.getElementById("m_pub_wzs_progress_x"); div.style.display = "none";}</script></body></html> ');

//win.document.write("<div style='font-size:10pt;font-family:宋體'>總共" + rows + "行,已導出<font id='sx' color='#cc0000'></font>行!</div>");
//win.m_pub_wzs_progress_show(0,rows);
strCols = ","+strCols+",";
var aRowSpans = new Array();
for(var i=0;i<cols;i++){
aRowSpans[i] = 1;
}
var isProgressErr = false;
for(var i = 0; i < rows; i++){
//btn.value = i;
if(!isProgressErr){
try{
win.m_pub_wzs_progress_show(rows,i+1);
}
catch(e){
isProgressErr = true;
}
}
var row = t.childNodes[i];
var xlcol =0;
var viwCol = -1; //所在表格的位置,指顯示位置,如果有行合并時,會與列索引不一致
var colInx = -1;
var colSpans = 1;
for(var h = 0; h < cols; h++){
if(aRowSpans[h]>1){
xlcol++;
aRowSpans[h]--;
viwCol++;
continue;
}
else{
colInx++;
}
var td = t.childNodes[i].childNodes[colInx];
if(td == null) continue;
colSpans = td.colSpan;
var rowSpan = td.rowSpan;
if(isNaN(rowSpan)) rowSpan = 1;
for(var k=0;k<td.colSpan;k++){
viwCol++;
xlcol++;
aRowSpans[viwCol] = rowSpan;
}
h+=td.colSpan-1; //跳過合并列
if(td.className=="hideNode"){
xlcol--;
continue;
}
var s = "";
if(td.hasChildNodes() && td.firstChild.nodeName.toLowerCase()=="input"){
if(td.firstChild.type.toLowerCase()=="text"){
s = td.firstChild.value;
}
else if(td.firstChild.type.toLowerCase()=="radio"){ //如果是單選框, 遍歷該框所有單選框,找到選擇的值
for(var k=0;k<td.childNodes.length;k++){
var cn = td.childNodes[k];
if(cn.nodeName.toLowerCase()=="input" && cn.type.toLowerCase() == "radio" && cn.checked){
s = cn.value;
break;
}
}
}
}
else{
s = td.innerText;
}
if(strCols.indexOf("," + (xlcol-1) + ",")!=-1){
osheet.Cells(xlrow,xlcol).NumberFormatLocal = '@';
}
if(td.rowSpan>1 || td.colSpan>1){
osheet.range(osheet.cells(xlrow,xlcol),osheet.cells(xlrow-1+td.rowSpan, xlcol-td.colSpan+1)).Select();
oXL.Selection.MergeCells = true;
osheet.Cells(xlrow,xlcol).HorizontalAlignment = 3;
//osheet.cells(i+td.rowSpan, xlcol-td.colSpan+1).value = s;
osheet.Cells(xlrow,xlcol-td.colSpan+1).value = s;//m_splitLen(s,30,'/r/n');
}else{
osheet.Cells(xlrow,xlcol).value = s;//m_splitLen(s,30,'/r/n');
}
}
xlrow++;
}
//添加表尾
if((sFooter == "") || (typeof(sFooter)=="undefined") || (sFooter==null)){
sFooter = "";
}
var d = new Date();
var sUser = "";
if((window.parent != null) && (window.parent.parent != null)){
try{
sUser = window.parent.parent.bottomFrame.document.getElementById("labUser").innerText.replace("用戶:","").replace(/ /g,"");
}
catch(ex){
}
}
var sFooterDefault = " 制表人:" + sUser + " 制表時間:" + d.getFullYear() + "-" + (d.getMonth() + 1) + "-" + d.getDate() + " " + d.getHours() + ":" + d.getMinutes() + ":" + d.getSeconds() + " ";
osheet.Cells(xlrow, 1) = sFooterDefault + sFooter;
osheet.Range(osheet.Cells(xlrow, 1),osheet.Cells(xlrow,cols)).Select(); //選擇該列//oXL.Selection.HorizontalAlignment = 4; //居中
oXL.Selection.MergeCells = true;
osheet.Range(osheet.Cells(1, 1),osheet.Cells(1,1)).Select(); //選擇第一個單元格列
osheet.Columns.AutoFit(); //自動列寬
for(var i=1;i<xlrow;i++){
osheet.Rows(i).RowHeight = osheet.Rows(i).RowHeight + 6; //自動大小后上下無邊距,需要增加高度,要不太擠。
}
if(!isProgressErr){ //關閉進度條
win.close();
}
oXL.Visible = true;
oXL.UserControl = true;

oXL = null;
obook = null;
osheets = null;
osheet = null;

btn.style.cursor = "hand";
}
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
久久躁日日躁aaaaxxxx| 亚洲激情第一页| 国产成人精品电影久久久| 国产精品网红直播| 日韩综合视频在线观看| 欧美日韩精品在线观看| 国产视频精品xxxx| 国产99久久精品一区二区 夜夜躁日日躁| 色综久久综合桃花网| 日韩av色综合| 91国在线精品国内播放| 国产精品久久久久久久久粉嫩av| 久久色免费在线视频| 狠狠色香婷婷久久亚洲精品| 久久精品最新地址| 久久琪琪电影院| 国产成人亚洲综合91精品| 亚洲欧美另类中文字幕| 久久久精品电影| 最新69国产成人精品视频免费| 日本欧美爱爱爱| 97久久伊人激情网| 欧美午夜视频在线观看| 亚洲精品网站在线播放gif| 欧美日韩国产激情| 成人有码视频在线播放| 日韩美女写真福利在线观看| 日韩在线激情视频| 青青草成人在线| 欧美成人亚洲成人日韩成人| 亚洲白拍色综合图区| 精品欧美一区二区三区| 久久免费少妇高潮久久精品99| 欧美影院在线播放| 日本中文字幕久久看| 日韩av电影免费观看高清| 国产综合福利在线| 亚洲精品少妇网址| 亚洲成人精品在线| 欧美国产高跟鞋裸体秀xxxhd| 国产精品扒开腿做爽爽爽视频| 日韩天堂在线视频| 国产精品偷伦视频免费观看国产| 久久精品国产清自在天天线| 国产在线视频2019最新视频| 成人黄色影片在线| 亚洲欧美国产高清va在线播| 欧美成人精品三级在线观看| 久久色免费在线视频| 人人做人人澡人人爽欧美| 91精品在线影院| 久久国产精品久久精品| 欧美高跟鞋交xxxxxhd| 国产成人精品999| 国产亚洲视频中文字幕视频| 日韩免费在线观看视频| 91九色国产视频| 久久久免费av| 亚洲高清色综合| 一区二区亚洲精品国产| 午夜精品久久久久久99热| 69视频在线播放| 亚洲福利在线观看| 欧美成年人在线观看| 精品女厕一区二区三区| 欧美综合在线第二页| 亚洲成人精品av| 日韩欧亚中文在线| 国产美女主播一区| 成人av在线网址| 欧美寡妇偷汉性猛交| 韩国国内大量揄拍精品视频| 国产不卡av在线免费观看| 精品国产91乱高清在线观看| 国产成人高清激情视频在线观看| 68精品国产免费久久久久久婷婷| 日韩福利在线播放| 亚洲精选一区二区| 国产精品偷伦视频免费观看国产| 亚洲综合在线中文字幕| 欧美精品一本久久男人的天堂| 国产一区二区三区直播精品电影| 成人美女av在线直播| 欧美成人一区二区三区电影| 日韩精品极品视频| 成人自拍性视频| 午夜精品一区二区三区在线| 久久精品亚洲精品| 亚洲国产99精品国自产| 国产成人激情小视频| 亲爱的老师9免费观看全集电视剧| 亚洲精品久久久久中文字幕欢迎你| 国产精品综合久久久| 国产精品欧美一区二区| 日韩av在线免费观看| 欧美激情精品久久久久久变态| 国产精品久久久久久五月尺| 亚洲黄色在线观看| 欧美激情国产精品| 久久免费视频这里只有精品| 久操成人在线视频| 欧美电影免费观看高清完整| 欧美亚洲第一区| 国产精品中文久久久久久久| 亚洲最大av在线| 欧美精品久久久久久久| 国产一区二区三区在线观看视频| 成人日韩av在线| 国产精品视频yy9099| 国产成人一区二区在线| 欧美国产第二页| 5566成人精品视频免费| 欧美大全免费观看电视剧大泉洋| 青青草99啪国产免费| 欧美成年人视频网站欧美| 精品调教chinesegay| 亚洲人午夜精品| 日韩国产激情在线| 日韩亚洲欧美中文在线| 久久久久久九九九| 91国产精品电影| 欧美亚洲日本黄色| 高清亚洲成在人网站天堂| 日韩av影视综合网| 国产一区二区美女视频| 日韩免费电影在线观看| 亚洲图中文字幕| 久久精品色欧美aⅴ一区二区| 国产成人精品优优av| 中文字幕自拍vr一区二区三区| 日韩欧美精品网站| 欧美亚洲另类激情另类| 欧美激情精品久久久久久免费印度| 欧美日韩激情小视频| 国产精品福利在线| 国内精品久久久久伊人av| 一区二区三区无码高清视频| 国产91|九色| 日韩精品福利在线| 亚洲在线第一页| 成人在线激情视频| 亚洲精品国产精品自产a区红杏吧| 92福利视频午夜1000合集在线观看| 懂色av中文一区二区三区天美| 日本精品久久电影| 国产亚洲一区二区在线| 成人a视频在线观看| 一区二区三区回区在观看免费视频| 欧美精品videosex性欧美| 91精品久久久久| 久久久久久久久久久国产| 日韩电影在线观看免费| 国产主播喷水一区二区| 亚洲国产精品资源| 国产一区二区三区高清在线观看| 亚洲国产中文字幕在线观看| 国产丝袜一区二区三区| 日韩av电影在线网| 欧美裸体xxxx极品少妇软件| 亚洲电影在线观看| 国产欧美日韩亚洲精品| 亚洲视频精品在线| 91亚洲永久免费精品| 亚洲精品成人av|