无论如何都是要用到FSO的,否则就无法生成文件。
如果要保存到服务器端就用服务器端的fso,如果保存到客户端就用客户端的fso。
以下是客户端(数据输出到表格)保存的代码。
<!--
//***********************************************************************************************
//21:46 2005-10-6
//输出表格到excel,
//需要调整ie安全选项的“对没有标记为安全的activex控件初始化和执行脚本”为“启用”或“提示”
// 建议设置为“提示”
//使用时直接在事件中调用脚本SaveToExcel(table,type,page)
//参数含义:table要保存的表格,type描述数据的类型可以不设置,page页码保存文件时用,可以不设置
//全局参数savepath默认的保存路径
// save**path某一类型数据保存的路径,**和type的值相同
//***********************************************************************************************
var oXL,fso;
var savepath="c:\\";
var saveadpath="c:\\playtoy\\ad\\";
var saveproductpath="c:\\playtoy\\product\\";
function getsavename(type,page){
return prompt("输入文件保存的路径及名称",eval("save"+type+"path")+type+".XLS");
}
function SaveToExcel(table,type,page,row,cell) {
//alert('ab');
// Start Excel and get Application object.
var file=getsavename(type,page);
if(file==""||file==null)return;
if(!/^[a-zA-Z]:\\.*\.\w*$/.test(file)){alert("请输入正确的文件名!");return;}
var filename=file.match(/\\+?[\w-]*\.\w*$/);
var path=file.match(/^.*\\/).toString();
var newpath = "";
if(fso==null) fso = new ActiveXObject("Scripting.FileSystemObject");
if(fso.fileExists(file))if(!confirm("文件已存在是否继续?"))return;
if(!fso.FolderExists(path))
if(confirm("你输入的路径“"+path+"”不存在是否创建?")){
s=path.split("\\");
for(i=0;i<s.length-1;i++){
newpath += s[i] +"\\";
if(!fso.FolderExists(newpath))fso.CreateFolder(newpath);
}
}
else
{alert("保存失败");return;}
if(oXL==null)oXL= new ActiveXObject("Excel.Application");
// Get a new workbook.
var oWB = oXL.Workbooks.Add();
var oSheet = oWB.ActiveSheet;
//var oSheet = new ActiveXObject("Excel.Sheet");
//var table = document.all.addata;