当前位置: 首页 > 图文教程 > 网络编程 > Javascript > 在客户端用JAVASCRIPT或VBSCRIPT生成WORD文档

Javascript
阻止JavaScript事件冒泡传递(cancelBubble 、stopPropagation)
(转载)JavaScript中匿名函数,函数直接量和闭包
简单的无缝滚动程序-仅几行代码
Javascript中的数学函数集合
javascript之大字符串的连接的StringBuffer 类
javascript之对系统的toFixed()方法的修正
用javascript实现自定义标签
js在客户端验证密码强度,兼容FireFox和IE
javascript背景颜色按时变换
脚本分析、压缩、混淆工具 JSA新版本发布,压缩效率提高大约10%
javascript语句中的CDATA标签的意义
用javascript实现分割提取页面所需内容
网上抓的一个特效
js之点击 超连接,提示一个层.点击空白.层消失
模拟用户操作Input元素,不会触发相应事件
弹出广告特效代码(一个IP只弹出一次)
(仅IE下有效)关于checkbox 三态
JavaScript Archive Network 集合
关于__defineGetter__ 和__defineSetter__的说明
textContent在Firefox下与innerText等效的属性

Javascript 中的 在客户端用JAVASCRIPT或VBSCRIPT生成WORD文档


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-08-10   浏览: 271 ::
收藏到网摘: n/a

哎!离开的微软的日子可真难过呀!

   小弟现在出差做一个项目,虽然咱还不会用JAVA,但是由于人手不够,我和一个JAVA程序员,两个人跑到XXX从头作起。因为是XXX系统,所以用户很讨厌微软的东东(除了OFFICE以外,呵呵。。。至于为何吗!可能是因为微软的东东太好用的缘故,人家觉得开发商水平太低呀!)。

   因为用户要求所做系统有文档自动生成的功能,所以我被安排负责用JAVA生成WORD文档的工作(因为咱是新手,没有经验呀!好象很简单),咱在网上晃来晃去,就是没有发现一个关于这方面的东东(咱都快绝望了),就在这时,在红雨姐姐这个BBS上认识了Itsyh老弟,Itsyh老弟告诉我在http://www.itpub.net/上看到过关于JAVA生成文档的帖子,于是呼!咱就飞奔而至,还真找到了这方面的内容(可惜呀!咱白高兴一场),有位老大说用jakartaPOI能够解决在服务器端用JAVA生成WORD文档的问题,于是咱就飞奔到http://jakarta.apache.org/poi/index.html上看了一下,结果还真是可以呀!连忙下了一个,于是就开始看POI的文档,我看呀!看呀!终于咱傻了。

   因为在POI中对于EXCELHSSF模块功能已经做的很好了,对于WORDHDF功能还在开发过程中呀!下面这段文字就jakarta给我带来的困惑(We are looking for developers!!! If you are interested in helping with HDF familiarize yourself with the source code and just start coding. Make sure you read the guidelines for getting involved ),咱终于要放弃这个POI了,于是就想到了在客户端生成应该没有这么复杂吧!

    终于熬了一晚,在同事的热心教导下,偶终于完成了用JAVASCRIPTVBSCRIPT在客户端生成WORD文档的代码工作(哎!因为我们两个都不太会用WORD,而吃了大亏呀!呵呵。。。等于是研究了WORD一个晚上),虽然有浏览器安全警告上的问题,但是使用的还不错。

注意:客户端要装OFFICE

下面我就把代码给大家参考一下,希望大家以后能用到。

WORD文档,我使用的文字型窗体区域的功能,所有区域定义好以后有个名字,也就是我要替换的名字。(替换内容长度可以不献呀!)
VBSCRIPT
代码:
<SCRIPT LANGUAGE="vbscript">
function word_onclick()
  Set myDocApp = CreateObject("Word.Application")
  myDocApp.Visible = True
  myDocApp.Activate
  set myDoc = myDocApp.Documents.Open("http://localhost/test/test.doc")  
  str = word_proc.textarea.value
  myDoc.FormFields("test").Range = str
  
end function
</SCRIPT>

JAVASCRIPT
代码:
<SCRIPT LANGUAGE="javascript">
function word_onclick()
{
  var myDocApp =new ActiveXObject("word.Application");
  myDocApp.visible = true;
  myDocApp.activate();
  var myDoc = myDocApp.documents.open("http://localhost/test/test.doc");  
  var str = word_proc.textarea.value;
  myDoc.formFields("test").range = str;
  
}
</SCRIPT>

WORD
文档看附件

希望大家能有更好的办法来解决这个问题。:D