1 function getXlsFromTbl(inTblId, inWindow, fname) {
2 try {
3 var allStr = ""
;
4 var curStr = ""
;
5 // alert("getXlsFromTbl");
6 if (inTblId !=
null && inTblId != "" && inTblId != "null"
) {
7 curStr =
getTblData(inTblId, inWindow);
8 }
9 // alert("curStr="+curStr);
10 if (curStr !=
null) {
11 allStr +=
curStr;
12 }
else {
13 alert("你要导出的表格不存在!"
);
14 return;
15 }
16 var fileName =
getExcelFileName(fname);
17 doFileExport(fileName, allStr);
18 }
catch (e) {
19 alert("导出发生异常:" + e.name + "->" + e.description + "!"
);
20 }
21 }
22 function getTblData(inTbl, inWindow) {
23 var rows = 0
;
24 // alert("getTblData is " + inTbl + "==" + inWindow);
25 var tblDocument =
document;
26 if (!!inWindow && inWindow != ""
) {
27 if (!
document.all(inWindow)) {
28 return null;
29 }
else {
30 tblDocument =
eval(inWindow).document;
31 }
32 }
33 var curTbl =
tblDocument.getElementById(inTbl);
34 var outStr = ""
;
35 if (curTbl !=
null) {
36 for (
var j = 0; j < curTbl.rows.length; j++
) {
37 // alert("j is " + j);
38 for (
var i = 0; i < curTbl.rows[j].cells.length; i++
) {
39 // alert("i is " + i);
40 if (i == 0 && rows > 0
) {
41 outStr += " \t"
;
42 rows -= 1
;
43 }
44 outStr += curTbl.rows[j].cells[i].innerText + "\t"
;
45 // alert();
46 if (curTbl.rows[j].cells[i].colSpan > 1
) {
47 for (
var k = 0; k < curTbl.rows[j].cells[i].colSpan - 1; k++
) {
48 outStr += " \t"
;
49 }
50 }
51 if (i == 0
) {
52 if (rows == 0 && curTbl.rows[j].cells[i].rowSpan > 1
) {
53 rows = curTbl.rows[j].cells[i].rowSpan - 1
;
54 }
55 }
56 }
57 if (j == 0
)
58 outStr = replaceAll(outStr, "\r\n", "");
//替换掉回车换行
59 outStr += "\r\n"
;
60 // alert(outStr);
61 }
62 }
else {
63 outStr =
null;
64 alert(inTbl + "不存在!"
);
65 }
66 return outStr;
67 }
68 function getExcelFileName(fname) {
69 var d =
new Date();
70 var curYear =
d.getYear();
71 var curMonth = "" + (d.getMonth() + 1
);
72 var curDate = "" +
d.getDate();
73 var curHour = "" +
d.getHours();
74 var curMinute = "" +
d.getMinutes();
75 var curSecond = "" +
d.getSeconds();
76 if (curMonth.length == 1
) {
77 curMonth = "0" +
curMonth;
78 }
79 if (curDate.length == 1
) {
80 curDate = "0" +
curDate;
81 }
82 if (curHour.length == 1
) {
83 curHour = "0" +
curHour;
84 }
85 if (curMinute.length == 1
) {
86 curMinute = "0" +
curMinute;
87 }
88 if (curSecond.length == 1
) {
89 curSecond = "0" +
curSecond;
90 }
91 var fileName = fname + "_" + curYear + curMonth + curDate + "_" +
curHour
92 + curMinute + curSecond + ".csv.html"
;
93 // alert(fileName);
94 return fileName;
95 }
96 function doFileExport(inName, inStr) {
97 var xlsWin =
null;
98 if (!!document.all("glbHideFrm"
)) {
99 xlsWin =
glbHideFrm;
100 }
else {
101 var width = 5
;
102 var height = 5
;
103 var openPara = "left=" + (window.screen.width / 2 - width / 2
)
104 + ",top=" + (window.screen.height / 2 - height / 2
)
105 + ",scrollbars=no,width=" + width + ",height=" +
height;
106 xlsWin = window.open("", "_blank"
, openPara);
107 }
108 xlsWin.document.write(inStr);
109 xlsWin.document.close();
110
111 xlsWin.document.execCommand('Saveas',
true, inName);
112 xlsWin.close();
113 }
114
115 function replaceAll(ss, s, r) {
116 var rs =
ss;
117 // alert(rs+"="+r);
118 // alert(rs.indexOf(s));
119 while (rs.indexOf(s) != -1
) {
120 // alert("A="+rs);
121 rs =
rs.replace(s, r);
122 // alert("B="+rs);
123 }
124 return rs;
125 }
转载于:https://www.cnblogs.com/zhc-hnust/p/5503201.html
相关资源:数据结构—成绩单生成器