在client端创建文件,需要用到两个插件FSO(var fso=new ActiveXObject('Scripting.FileSystemObject');) 和XMLDom
function createClientFile(fileCliPath,fileName,fileSerPath,fileType,fileSpec)
{
var oFileDom=loadFile(fileName,fileSerPath,fileType,fileSpec);
var fileContent=oFileDom.xml;
注意:寫在客戶端文件時候,需要在Client瀏覽器中首先把web site 設置為信任web,并且把信任網站的custum level Reset為最初始值,并且把initialize and script ActiveX controls not marks as safe 設置為Enable
var fso=new ActiveXObject('Scripting.FileSystemObject');
var tmpSerice=Math.random()*10000000000;
if(fileType==fileSVGType && fileSpec==speToTFT)
{
fileSVGClientPath=fileCliPath+fileName+fileSpec+tmpSerice+fileType;
fileSVGClientPath1=clientFilePath1+fileName+fileSpec+tmpSerice+fileType;
var clientFile=fso.CreateTextFile(fileSVGClientPath,true,true);
clientFile.WriteLine(fileContent);
clientFile.Close();
return fileSVGClientPath;
}
else if(fileType==fileSVGType && fileSpec==speToCF)
{
fileSVGCFClientPath=fileCliPath+fileName+fileSpec+tmpSerice+fileType;
fileSVGCFClientPath1=clientFilePath1+fileName+fileSpec+tmpSerice+fileType;
var clientFile=fso.CreateTextFile(fileSVGCFClientPath,true,true);
clientFile.WriteLine(fileContent);
clientFile.Close();
return fileSVGCFClientPath;
}
else if(fileType==fileXMLType && fileSpec==speToOrigin)
{
fileXMLClientPath=fileCliPath+fileName+speToOrigin+tmpSerice+fileType;
var clientFile=fso.CreateTextFile(fileXMLClientPath,true,true);
clientFile.WriteLine(fileContent);
clientFile.Close();
return fileXMLClientPath;
}
else if (fileType==fileXMLType && fileSpec==speToProContact)
{
fileXMLProCotRefPath==fileCliPath+fileName+speToOrigin+tmpSerice+fileType;
var clientFile=fso.CreateTextFile(fileXMLProCotRefPath,true,true);
clientFile.WriteLine(fileContent);
clientFile.Close();
return fileXMLProCotRefPath;
}
else if(fileType=fileXMLType && fileSpec==speToCFOrigin)
{
fileXMLCFClientPath=fileCliPath+fileName+speToCFOrigin+tmpSerice+fileType;
var clientFile=fso.CreateTextFile(fileXMLCFClientPath,true,true);
clientFile.WriteLine(fileContent);
clientFile.Close();
return fileXMLCFClientPath;
}
}
function loadFile(fileName,filePath,fileType,fileSpec)
{
var fileServerPath=filePath+fileName+fileSpec+fileType;
var oFileDom=new createXMLDOM();
oFileDom.async=false;
oFileDom.onreadystatechange=function()
{
if(oFileDom.readyState==4)
{
}
};
oFileDom.load(fileServerPath);
return oFileDom;
}
function createXMLDOM()
{
if(ActiveXObject)
{
var arrSignatures=["MSXML2.DOMDocument.5.0","MSXML2.DOMDocument.4.0","MSXML2.DOMDocument.3.0","MSXML2.DOMDocument","Microsoft.XmlDom"];
for(var i=0;i<arrSignatures.length;i++)
{
try
{
var oXmlDom=new ActiveXObject(arrSignatures[i]);
return oXmlDom;
}
catch(oError)
{
}
}
throw new Error ("MSXML is not installed on your system.");
}
else if(document.implemention && document.implemention.createDocument)
{
var oXmlDom=document.implemention.createDocument("","",null);
return oXmlDom;
}
else
{
throw new Error("Your browser doesn't support an XML Dom object.");
}
}
调用:
<asp:DropDownList id="ddlProductId" runat="server" Width="300px" AutoPostBack="True" OnSelectedIndexChanged="ddlProductId_SelectedIndexChanged" οnchange="createClientFile(clientFilePath,this.value,serverSVGFilePath,fileSVGType,speToTFT);createClientFile(clientFilePath,this.value,serverSVGFilePath,fileSVGType,speToCF);createClientFile(clientFilePath,this.value,serverXMLFilePath,fileXMLType,speToOrigin);showSVGChart('DivSvgContainerTFT',fileSVGClientPath);showSVGChart('DivSvgContainerCF',fileSVGCFClientPath)" OnDataBinding="ddlProductId_DataBinding">