网上下载了个源码(应该是调用的DSOFramer),可以在线打开、编辑office文档并可保存到本地,我个人不懂得源码,所以也不敢胡乱修改。现在可以实现打开这个网页就能自动打开'http://127.0.0.1:80/excel/kucun.xls这个表格,并且可以进行编辑修改,可是保存却只能保存到本地,我希望能够编辑完成后保存到虚拟主机同名文件,就是http://127.0.0.1:80/excel/kucun.xls这个文件。不知道有没有什么办法加个按钮,点击就可以保存。下面是源码
<html>
<head><title>报表</title>
<script type="text/javascript" src="../js/jquery-1.3.2-vsdoc2.js"></script>
<style>
.fontSize1 {font-size: 65%;  font-family: Verdana, Geneva, Arial, Helvetica, sans-serif;}
.fontSize2 {font-size: 70%;  font-family: Verdana, Geneva, Arial, Helvetica, sans-serif;}
.fontSize3 {font-size: 75%;  font-family: Verdana, Geneva, Arial, Helvetica, sans-serif;}
.fontSize4 {font-size: 80%;  font-family: Verdana, Geneva, Arial, Helvetica, sans-serif;}
.fontSize5 {font-size: 125%;  font-family: Verdana, Geneva, Arial, Helvetica, sans-serif;}
.fakehlink {cursor: hand;  color: #0066CC; font-weight:normal;width:100px;}
</style></head>
<script type="text/javascript">
//打开本地文档
 function OpenDoc(){
  document.all.oframe.showdialog(1);
 }
 //打开服务器文档
 function OpenWebDoc(){
  try{
  oframe.open('http://127.0.0.1:80/excel/kucun.xls',true);
  }catch(ex){
  alert("加载文档失败."+ex);
  }
 }
 //保存文档
 function SaveCopyDoc(){
  try{
  oframe.showdialog(3);
  }catch(Ex){alert("当前没有已打开文档.");}
 }
 //关闭文档
 function closeDoc(){
  try{
  oframe.close();
  }catch(ex){
  alert("当前没有已打开文档.");
  }
  }
 //新建文档
 function newDoc(){
  oframe.showdialog(0);
 }
 function ToggleTitlebar(){
  oframe.Titlebar=0;
 }
 //隐藏工具栏
 function ToggleToolbars(){
  oframe.Toolbars=0;
 }
 //隐藏菜单
 function ToggleMenubar(){
  oframe.Menubar=0;
 }
 //打印
 function PrintDoc(){
  try{
  oframe.printout();
  }catch(ex){
  }
 }
 $(document).ready(function(){
  ToggleTitlebar();
  ToggleMenubar();
 
 });
  function zoomin(){
  //oframe.zoomin();
 }
</script>
<body bgcolor="#ffffff" topmargin="0" leftmargin="0" marginheight="0" marginwidth="0" onload='OpenWebDoc()'>
  <table cellpadding="0" cellspacing="0" border="0" width="100%" bgcolor="#f1f1f1">
    <tr align="left">
      
      <td class="fontSize1">
   <button  class="fakehlink" onClick="window.showModalDialog('report.htm','','dialogWidth:1124px;dialogHeight:768px;resizeable:yes')">测试</button>
         <button  class="fakehlink" onClick="SaveCopyDoc()">导出报表</button>
 <button  class="fakehlink" onClick="PrintDoc()">打印报表</button>
 <button  class="fakehlink" onClick="closeDoc()">关闭报表</button>
 <button class="fakehlink" onClick="OpenDoc()">打开文档</button>
 <button  class="fakehlink" onClick="javascript:history.back();">关闭窗口</button>
      </td>
     
    </tr>
  </table> <table width="100%" height="100%" cellspacing="0" cellpadding="0" border="0">
    <tr>
     <td >
       <object classid="clsid:00460182-9E5E-11d5-B7C8-B8269041DD57" id="oframe" width="100%" height="100%">
         <param name="BorderStyle" value="1">
         <param name="TitlebarColor" value="52479">
         <param name="TitlebarTextColor" value="0">
         <param name="Menubar" value="1"> 
       </object>
     </td>
    </tr>
   
  </table></body>
</html>

解决方案 »

  1.   

    我添加了这样一个button:
      function saveWeb(){
      try{
      var sUrl = "http://www.chnetter.com/excel/kucun.xls"; 
    document.all.oframe.overwriteExisting = true; 
    document.all.oframe.save( sUrl , true); 
      }catch(Ex)
    {alert( "error:" + e.description); 
    }
     }<button  class="fakehlink" onClick="saveWeb()">保存表格</button>
    保存后没有任何提示,可是刷新后发现其实还是没有任何改变。
      

  2.   

    楼主悬赏分好高啊~~
    可惜我不会 %>_<%
    因为我新手~~~~~
    想蹭点分 O(∩_∩)O~~~
      

  3.   

    领导们,我是真一点基础也没有啊,学这点东西全都是网上看来得,一知半解~~所以麻烦给个全的源码好么?我找到了一个dsoframer的,基本功能都实现了,就是不能保存到服务器上,还请大家帮帮忙。凡解决问题的,两贴分全给,总计200分。
    另一帖地址:http://topic.csdn.net/u/20100718/16/4fdf208b-21cd-4df5-a887-d8af178268ff.html
      

  4.   

    应该怎么看呢?我一点基础也没有,不会啊。不过有个道理我是明白的,我的web服务器上面有用户名和密码,不可能不使用用户名密码就能保存的,可是用户名密码应该放在哪儿呢?
    希望大家能给一个全的源码,或者告诉我应该新添一段代码到哪里~~~~
      

  5.   

    感谢各位的支持,我用笨办法解决了,思路如下:
    js调用dsoframer进行编辑——保存到本地——phpupload到服务器——dsoframer默认打开文件全套源码我已经发到csdn上去,地址为:
    http://download.csdn.net/source/2560071
      

  6.   

    如果新建了一个 dsoframer 用代码怎么保存啊????