JS
function getXlsFromTbl(inTblId) {
try {
inTblId = "demo";
var xml = new ActiveXObject("Microsoft.XMLDOM")
xml.async = false
xml.load(inTblId + ".xml")
// Load XSL
var xsl = new ActiveXObject("Microsoft.XMLDOM")
xsl.async = false
xsl.load( inTblId + ".xsl")
var d = " " + xml.transformNode(xsl);
//去掉 xml 头
var arr = d.split("?>");
//获得文件名
var fileName = getExcelFileName(inTblId);
//导出
doFileExport(fileName, arr[1]);
}
catch (e) {
alert("导出发生异常:" + e.name + "->" + e.description + "!");
}
}
//获得一个文件名
function getExcelFileName(inTblId) {
var d = new Date();
var curYear = d.getYear();
var curMonth = "" + (d.getMonth() + 1);
var curDate = "" + d.getDate();
var curHour = "" + d.getHours();
var curMinute = "" + d.getMinutes();
var curSecond = "" + d.getSeconds();
if (curMonth.length == 1) {
curMonth = "0" + curMonth;
}
if (curDate.length == 1) {
curDate = "0" + curDate;
}
if (curHour.length == 1) {
curHour = "0" + curHour;
}
if (curMinute.length == 1) {
curMinute = "0" + curMinute;
}
if (curSecond.length == 1) {
curSecond = "0" + curSecond;
}
var fileName = inTblId + "_" + curYear + curMonth + curDate + "_"
+ curHour + curMinute + curSecond + ".csv";
//alert(fileName);
return fileName;
}
//导出Excel
function doFileExport(inName, inStr) {
var xlsWin = null;
if (!!document.all("glbHideFrm")) {
xlsWin = glbHideFrm;
}
else {
var width = 6;
var height = 4;
var openPara = "left=" + (window.screen.width / 2 - width / 2)
+ ",top=" + (window.screen.height / 2 - height / 2)
+ ",scrollbars=no,width=" + width + ",height=" + height;
xlsWin = window.open("", "_blank", openPara);
}
xlsWin.document.write(inStr);
xlsWin.document.close();
xlsWin.document.execCommand('Saveas', true, inName);
xlsWin.close();
}
html
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" >
<head>
<title></title>
<script src="ToExcel.js" type="text/javascript"></script>
</head>
<body>
<input id="Button1" type="button" onclick="javascript:getXlsFromTbl('demo');" value="button" />
</body>
</html>
Xsl
<?xml version="1.0" encoding="utf-16"?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:template match="/">
Title	Artist	country	company	price	year	
<xsl:for-each select="catalog/cd">
<xsl:value-of select="title"/>	<xsl:value-of select="artist"/>	<xsl:value-of select="country"/>	<xsl:value-of select="company"/>	<xsl:value-of select="price"/>	<xsl:value-of select="year"/>	
</xsl:for-each>
</xsl:template>
</xsl:stylesheet>
XML
<?xml version="1.0" encoding="utf-8"?>
<catalog>
<cd>
<title>Empire Burlesque</title>
<artist>Bob Dylan</artist>
<country>USA</country>
<company>Columbia</company>
<price>10.90</price>
<year>1985</year>
</cd>
<cd>
<title>Hide your heart</title>
<artist>Bonnie Tyler</artist>
<country>UK</country>
<company>CBS Records</company>
<price>9.90</price>
<year>1988</year>
</cd>
</catalog>
分享到:
相关推荐
xml+xsl+css html网页 xml+xsl+css html网页 xml+xsl+css html网页 xml+xsl+css html网页 xml+xsl+css html网页 xml+xsl+css html网页
使用JavaScript+XML+XSL创建树形目录,源码及示例
xml +js+xsl 实现无限极菜单
XML+DTD+xsl+javascript,这是我读大学时刚学xml写的代码,比较适合初学者看的,就拿出来了
主要是使用xml+css+xsl写的个人简历,用于课程设计,拥有完整的项目代码
用于完整的项目代码,完整的dtd,拥有精美的页面设计,严谨的页面布局
XML+xsl讲XML文档的内容用xsl建表。
而且还能限制显示特定位置的节点,例如有18条记录,可以在xsl中设置只显示第1-6条,也可以设置只显示第7-12条,再配合客户端脚本,就可以动态改变xsl文档中控制显示指定位置节点的属性,从而实现分页(具体见代码)...
xml+xsl中分割字符
通过XSL解析XML在浏览器中显示树的XSL样式表。 处理简便,功能强大,支持拖放,支持键盘操作,每个结点可显示不同的图标,刷新时可以自动记录结点状态,可灵活处理点击动作。 <br>注:本样式表为同步加载模式...
javascript xml xsl xslt javascript xml xsl xslt javascript xml xsl xslt javascript xml xsl xslt
XML+XSL/FO生成PDF文件Demo,主要用于Fop插件,算是个小型练习项目
CSDN左Tree树菜单HTC+JS+XML+XSL源代码
这是一个用XML+XSL生成一个灵活的树形菜单。其中用li和ul嵌套进行菜单的展示,用js控制子菜单的隐藏和显示,css来控制样式,xml文件用来存放菜单的内容。如果要生成多级菜单可以修改xml文件,将item节点下的name改为所...
用XSL把XML转化在EXCEL导出, 里面包括了反台实现与XSL模板.
单XML+多XSL(描述单模块结构)+多CSS(对XSL和模板描述样式)+模板(描述页面结构DIV) 优点:表现层数据表现分离,方便修改页面数据,样式 ;结构于内容分离,方便修改内容 是个DEMO提供初学者看
XML 不使用预先定义的标签(我们可以使用任何喜欢的标签名),并且这些标签的意义并不都那么容易被理解。 <table> 元素意味着一个 HTML 表格,一件家具,或是别的什么东西 - 浏览器不清楚如何显示它。 XSL 可描述...
WEB图形格式SVG及基于XML+XSL的动态生成技术
用xml 调用xsl实现 table界面的设计思想,适合初级学员学习的经典范例
使用xsl导出excel源码示例,使用xsl导出excel源码示例,使用xsl导出excel源码示例,使用xsl导出excel源码示例.