<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<script type="text/javascript">
function GetValue(){
var xlDialogOpen = 1;
//创建连接对象
var objFactory = new ActiveXObject("CacheActiveX.Factory");
//连接信息
var strConn = "cn_iptcp:127.0.0.1[1972]:YOURNAMESPACE:USERNAME:PASSWORD"
//连接成功返回true,否则返回false
var boolConn = objFactory.Connect(strConn);
if(boolConn){
//Test.CacheFactory的类名
var objClass = objFactory.Static("Test.CacheFactory");
var objExcel = new ActiveXObject("Excel.Application");
objExcel.Visible = false;
var objWorkBook = objExcel.Workbooks.Open("D:\\template.xls");
var objSheet = objWorkBook.Worksheets.Item(1);
//代码 描述 值 备注
objSheet.Cells(1, 1).Value = "姓名";
objSheet.Cells(1, 2).Value = "性别";
objSheet.Cells(1, 3).Value = "年龄";
objSheet.Cells(1, 4).Value = "婚姻状况";
//调用类中方法,返回数据
var strData = objClass.TestData();
alert(strData)
//解析数据
var arrData = strData.split("^");
for(var row = 0; row < arrData.length; row++)
{
var strRec = arrData[row];
var arrRec = strRec.split("_");
objSheet.Cells(row+2, 1).Value = arrRec[0];
objSheet.Cells(row+2, 2).Value = arrRec[1];
objSheet.Cells(row+2, 3).Value = arrRec[2];
objSheet.Cells(row+2, 4).Value = arrRec[3];
}
var fname = objExcel.Application.GetSaveAsFilename( "人员信息.xls","Excel Spreadsheets (*.xls), *.xls");
objWorkBook.SaveAs(fname);
//释放资源
objSheet = null;
objWorkBook.Close (savechanges=true);
objExcel.Quit();
objSheet = null;
objWorkBook = null;
objExcel = null;
}else{
alert("连接失败");
}
}
</script>
<title>下载</title>
</head>
<body>Cache中导出excel以及js中建立连接到class<br />
<li class="tabin" id="aaa" value="123" onclick="GetValue();">点击导出人员信息</li>
</body>
</html>
使用ActiveXObject此方法支持IE浏览器,火狐浏览器需要下载activexobject相关插件
导出效果:
服务器端代码:
Class Test.CacheFactory Extends (%Persistent, %XML.Adaptor)
{
//测试,返回数据
ClassMethod TestData() As %String
{
q "张三_男_22_未婚^李四_女_30_未婚"
}
}
分享到:
相关推荐
数据导出为excel是前端比较常用的功能。笔者近期在网上收集汇总了几种常用的方法,供大家使用。 1、ActiveXObject(“Excel.Application”) 这种方法只能在IE下使用。 优点:参照VBA控制excel对象。(代码不会的可以...
使用JavaScript中的ActiveXObject填充并设置Excel格式
一个实现自定义ActiveX控件的demo TestActiveX.html页面中通过两种方式(OBJECT对象引用和ActiveXObject对象创建)访问ActiveX控件对象的方法和属性 解决 意外地调用了对象的方法和属性访问
var oXL = new ActiveXObject("Excel.Application"); //var oXL = new ActiveXObject("Word.Application"); // Get a new workbook. var oWB = oXL.Workbooks.Add(); var oSheet = oWB.ActiveSheet; var table ...
最近有需求将数据导出到word里,然后编辑打印。 想过几种方案: 1.使用jacob。 2.使用apache的poi。 3.使用itext。 由于时间比较紧,没多的时候去学习研究上述工具包,现在用javascript操作ActiveXObject控件,用...
try { oXL = new ActiveXObject(“Excel.Application”); } catch(e) { alert(“无法启动Excel!\n\n如果您确信您的电脑中已经安装了Excel,” + “那么请调整IE的安全级别。\n\n具体操作:\n\n” + “工具 → ...
现在的绝对多数浏览器都增加了对XmlHttp的支持,IE中使用ActiveXObject方式创建XmlHttp对象,其他浏览器如:Firefox、Opera等通过window.XMLHttpRequest来创建xmlhttp对象。
废话俺就少说了,直接进入正题!!单纯的JS能够导出Excel的不多见,一般都需要调用客户端所安装的Office Excel组件来完成这个工作。这里我主要讲EasyUI内的DataGrid如何结合JS导出Excel文件 ... //创建AX对象excel
OBJECT对象引用时 属性名和ActiveXObject方式有点区别;<2>CLASSID "CLSID:E798C16A D071 4854 8771 67333EDC49D5"引用方式才正确) function testActiveX { var SourceObj new ...
ActiveXObject获取文本内容
" value="导出到excel" class="notPrint"> 导出到Excel代码 [removed] <!-- function AutomateExcel() { // Start Excel and get Application object. var oXL = new ActiveXObject("Excel.Application"); //...
不是已经 发布好的安装包,这是个小项目,有详细的代码,我也是研究了好长时间才实现了,想分享下,希望能帮到各位!
创建文件的方法有很多,在本文为大家详细介绍下js中时如何实现的,感兴趣的朋友不要错过了
主要介绍了JavaScript基于activexobject连接远程数据库SQL Server 2014的方法,结合实例形式分析了javascript使用activexobject远程连接数据库的相关操作技巧,需要的朋友可以参考下
代码如下:function ExportToExcel(tableId) //读取表格中每个单元到EXCEL中 { try{ var curTbl = document.getElementById(tableId); var oXL = new ActiveXObject(“Excel.Application”); //创建AX对象excel ...
纯客户端操作Excel,如果是在访问服务器端的需要在客户端把服务器IP加入信任站点。使用JavaScript中的ActiveXObject填充并设置Excel格式
主要介绍了JavaScript将Web页面内容导出到Word及Excel的方法,涉及javascript操作ActiveXObject控件的使用技巧,具有一定参考借鉴价值,需要的朋友可以参考下
代码如下: function copyToExcel(tableid) { //控制按钮 var btn = document.getElementById(... try { var oXL = new ActiveXObject(“Excel.Application”); } catch (e) {//IE安全级别未设置将出现错误 ( Auto
Js导出表格为Excel文件 的常见一种办法是调用:ActiveXObject(“Excel.Application”) ,但是这种方法有局限性,只能在IE系列下的浏览器里实现,兼容性方面不理想。 经测试,采用本文推荐的方法能兼容性较好的导出...