如何实现单击文件链接,弹出另存为对话框,不弹出“打开 保存 取消”默认的对话框类似<a href="#" onclick="saveFile(<%=url%>)">动态取数据库地址</a>如何写这个函数 saveFile(url){},谢谢。

解决方案 »

  1.   

    这段代码可以打开本地的word,能不能改一改,把url传给FileDialog,执行FileDialog.ShowSave(); 方法  
    <HTML>   
      <HEAD>   
      <TITLE>SaveAs   TEST</TITLE>   
      <SCRIPT   LANGUAGE="javascript">   
      //<!--   
      //var   fso   =   new   ActiveXObject("Scripting.FileSystemObject");   
        
      function   saveFileDialog(url)   
      {   
          FileDialog.CancelError=true;   
          try{   
              FileDialog.title   =   "文件另存为";   
              FileDialog.Filter   =   "custom  files (*.xls)|*.xls|All   files (*.*)|*.*";   
              FileDialog.FilterIndex   =   2;  
              
              //Microsoft   JScript   运行时错误:   对象不支持此属性或方法   
              FileDialog.ShowSave();   
               
          }   
          catch(e){   
              alert("false:"+   FileDialog.filename);   
          }  
      }   
        
      function   OpenFile()   
      {   
      FileDialog.CancelError=true;   
      FileDialog.Filter="Word模板|*.doc|Word模板|*.dot";   
      //Microsoft   JScript   运行时错误:   对象不支持此属性或方法   
      FileDialog.ShowOpen();   
      var   WordApp=new   ActiveXObject("Word.Application");   
      WordApp.Application.Visible=false;   
      var   Doc=WordApp.Documents.Open(FileDialog.filename);   
      Doc.Activate();   
      Doc.Parent.Options.InsertedTextColor=4;   
      Doc.Parent.Options.InsertedTextMark=2;   
      Doc.Parent.Options.DeletedTextColor=4;   
      Doc.Parent.Options.DeletedTextMark=1;   
      Doc.TrackRevisions=true;   
      Doc.PrintRevisions=true;   
      Doc.ShowRevisions=true;   
      Doc.Application.UserName="";   
      var   Range=doc.Range();   
      Range.Select();   
      var   Selection=WordApp.Selection;   
      Selection.Copy();   
      App.focus();   
      document.execCommand("Paste");   
      App.focus();   
      WordApp.DisplayAlerts=false;   
      Doc.Close();   
      WordApp.DisplayAlerts=true;   
      WordApp.Quit();   
      return   false;   
      }   
        
      //-->   
      </SCRIPT>   
      </HEAD>   
      <BODY>   
      <object   id="FileDialog"   style="left:   0px;   TOP:   0px"   classid="clsid:f9043c85-f6f2-101a-a3c9-08002b2f49fb">   
      <param   name="_ExtentX"   VALUE="847">   
      <param   name="_ExtentY"   VALUE="847">   
      <param   name="_Version"   VALUE="393216">   
      <param   name="CancelError"   VALUE="0">   
      <param   name="Color"   VALUE="0">   
      <param   name="Copies"   VALUE="1">   
      <param   name="DefaultExt"   VALUE="">   
      <param   name="DialogTitle"   VALUE="">   
      <param   name="FileName"   VALUE="">   
      <param   name="Filter"   VALUE="">   
      <param   name="FilterIndex"   VALUE="0">   
      <param   name="Flags"   VALUE="0">   
      <param   name="FontBold"   VALUE="0">   
      <param   name="FontItalic"   VALUE="0">   
      <param   name="FontName"   VALUE="">   
      <param   name="FontSize"   VALUE="8">   
      <param   name="FontStrikeThru"   VALUE="0">   
      <param   name="FontUnderLine"   VALUE="0">   
      <param   name="FromPage"   VALUE="0">   
      <param   name="HelpCommand"   VALUE="0">   
      <param   name="HelpContext"   VALUE="0">   
      <param   name="HelpFile"   VALUE="">   
      <param   name="HelpKey"   VALUE="">   
      <param   name="InitDir"   VALUE="">   
      <param   name="Max"   VALUE="0">   
      <param   name="Min"   VALUE="0">   
      <param   name="MaxFileSize"   VALUE="260">   
      <param   name="PrinterDefault"   VALUE="1">   
      <param   name="ToPage"   VALUE="0">   
      <param   name="Orientation"   VALUE="1">   
      </object>   
      <BR>SaveAs   TEST<BR>   
      <BUTTON   onclick="saveFileDialog('http://www.abc.com/documents/sample.doc')"   >saveFileDialog</BUTTON><BR>   
      <BUTTON   onclick="OpenFile()"   >OpenFile</BUTTON><BR>   
      </BODY>   
      </HTML>
      

  2.   

    <a href="javascript:document.execCommand('Saveas',false,'c:\\sample.html')">另存为</a>