当前位置: 代码迷 >> Lotus >> B/S中怎么用javascript实现附件的下载
  详细解决方案

B/S中怎么用javascript实现附件的下载

热度:190   发布时间:2016-05-05 07:22:43.0
B/S中如何用javascript实现附件的下载?
如题,请高人指教。

------解决方案--------------------
相对地址链接:@If(@Attachments!=0;"[<a href="[email protected](@DocumentUniqueID)+"/$FILE/"[email protected]+" target=_blank>"[email protected]+"</a>]";"")

绝对地址链接:@If(@Attachments!=0;"[<a href=/"[email protected](@ReplaceSubstring(@Subset(@DbName;-1);" ";"+");"\\";"/")+"/0/"[email protected](@DocumentUniqueID)+"/$FILE/"[email protected]+" target=_blank>"[email protected]+"</a>]";"")
------解决方案--------------------
我也正在研究这个
如果要求不复杂,可以考虑给数据库和表单加权限,控制下载
不过直接打开的无法解决
。。。
共同等待好的解决方案
------解决方案--------------------
设一个区域:ShowHTML,
curDoc.ShowHTML="<script>var win=window.open('http://localhost/test.txt');win.document.execCommand('Saveas',true, 'D:\\TEST.txt')</script>"

------解决方案--------------------
是写在代理中的。
------解决方案--------------------
假如下载,就写个按钮,然后按钮调用这个代理
------解决方案--------------------
好主意耶~
------解决方案--------------------
调用: DownURL(docurl,docLocalfilepath); //从数据库下载doc文件到本地
函数:
//下载
function DownURL(strRemoteURL,strLocalURL)
{
// try
var xmlHttp = null; 
if (window.XMLHttpRequest){

// If IE7, Mozilla, Safari, etc: Use native object
var xmlHttp = new XMLHttpRequest()
// alert("IE7")
}
else 
{
if (window.ActiveXObject){

// ...otherwise, use the ActiveX control for IE5.x and IE6
var xmlHttp = new ActiveXObject("Microsoft.XMLHTTP"); //Microsoft.XMLHTTP Msxml2.XMLHTTP.3.0
// alert("IE6")
}

}

xmlHttp.open("Get",strRemoteURL,false);
xmlHttp.send();
 
var adodbStream=new ActiveXObject("ADODB.Stream");
adodbStream.Type=1; //1=adTypeBinary
adodbStream.Open();
adodbStream.write(xmlHttp.responseBody);
adodbStream.saveToFile(strLocalURL,2);
adodbStream.close();
adodbStream=null;
xmlHttp=null;
// }
// catch(e)
// {
// window.confirm(e);
// }
//window.confirm("下载完成.");
}
  相关解决方案