javascript中直接引用Microsoft的COM生成Word

 更新时间:2014年01月20日 16:44:31   作者:  
直接引用Microsoft的COM是可以生成Word的,下面为大家介绍下实现的javascript代码
复制代码 代码如下:

<html>
<head>
<meta http-equiv=Content-Type content="text/html;charset=utf-8">
<title>Build Document by Script</TITLE>
<SCRIPT LANGUAGE="text/javascript">
function word_onclick()
{
var myDocApp=null;
myDocApp =new ActiveXObject("word.Application");
myDocApp.Application.Visible = true;
var myDoc = myDocApp.Documents.Add();

myDocApp.Selection.ParagraphFormat.Alignment=1
myDocApp.Selection.Range.Bold=true;
myDocApp.Selection.Font.Size=22;
myDocApp.Selection.Text="请假申请单"
myDocApp.Selection.insertAfter("\n");
myDocApp.Selection.MoveRight(2,10);    
myDocApp.Selection.TypeParagraph();
myDocApp.Selection.Font.Bold=false;
myDocApp.Selection.Font.Size=12;

var myTable0=myDoc.Tables.Add(myDocApp.Selection.Range,3,4);
myTable0.cell(1,1).Range.Text="请假人";
myTable0.cell(1,2).Range.Text="张三";
myTable0.cell(1,3).Range.Text="请假时间";
myTable0.cell(1,4).Range.Text="2006-2-10";

myTable0.cell(2,1).Range.Text="工号";
myTable0.cell(2,2).Range.Text="32412";
myTable0.cell(2,3).Range.Text="填表时间";
myTable0.cell(2,4).Range.Text="2006-2-9";

myTable0.cell(3,1).Range.Text="请假原因";
myTable0.cell(3,2).Range.Text="感冒";
myTable0.cell(3,3).Range.Text="处理方式";
myTable0.cell(3,4).Range.Text="病假";

var range=myDocApp.ActiveDocument.Content;
range.Collapse(0);
range.insertAfter("\n");
range=myDocApp.ActiveDocument.Content;
range.Collapse(0);

var myTable2=myDoc.Tables.Add(range,1,2);
myTable2.Columns(1).SetWidth(320,2);
myTable2.cell(1,1).Range.Text="申请人签名" //空格勿删
myTable2.cell(1,2).Range.Text="申请人的签名";

try{
myDocApp.ActiveDocument.SaveAs("e:\\JaveToWord.doc");
}catch(exception){
alert("浏览器安全设置过高,保存文件到本地失败");
myDocApp.Documents.close();
myDocApp.Application.quit();
myDocApp=null;
window.close();
}
}
</SCRIPT>
</HEAD>
<BODY>
<p><a href="javascript:word_onclick()">生成WORD</a></p>
</BODY>
</HTML>

相关文章

  • javascript的trim,ltrim,rtrim自定义函数

    javascript的trim,ltrim,rtrim自定义函数

    今天用到javascript去掉一个文本框中字符串两端的空格,开始还以为有trim,ltrim,rtrim函数(asp中有这三个函数,弄混了),结果找半天,没有找到。最后找到用正则实现这样功能的自定义函数。
    2008-09-09
  • javascript数字格式化通用类 accounting.js使用

    javascript数字格式化通用类 accounting.js使用

    accounting.js 是一个非常小的JavaScript方法库用于对数字,金额和货币进行格式化。并提供可选的Excel风格列渲染。它没有依赖任何JS框架。货币符号等可以按需求进行定制
    2012-08-08
  • this和执行上下文实现代码

    this和执行上下文实现代码

    Javascript中this关键字通常指向当前函数的拥有者。在javascript中通常把这个拥有者叫做执行上下文。
    2010-07-07
  • JavaScript数组操作详解

    JavaScript数组操作详解

    本文主要介绍了JavaScript的数组操作,具有很好的参考价值,下面跟着小编一起来看下吧
    2017-02-02
  • JavaScript 反射和属性赋值实例解析

    JavaScript 反射和属性赋值实例解析

    这篇文章主要介绍了JavaScript 反射和属性赋值实例解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2019-10-10
  • JS验证邮箱格式是否正确的代码

    JS验证邮箱格式是否正确的代码

    验证邮箱格式是否正确的方法有很多,接下来为大家介绍下使用js是如何做到的
    2013-12-12
  • Javascript 两个窗体之间传值实现代码

    Javascript 两个窗体之间传值实现代码

    众所周知window.open() 函数可以用来打开一个新窗口,那么如何在子窗体中向父窗体传值呢,其实通过window.opener即可获取父窗体的引用。
    2009-09-09
  • Flutter 超实用简单菜单弹出框 PopupMenuButton功能

    Flutter 超实用简单菜单弹出框 PopupMenuButton功能

    这篇文章主要介绍了Flutter 超实用简单菜单弹出框 PopupMenuButton功能,本文通过实例代码给大家介绍的非常详细,具有一定的参考借鉴价值,需要的朋友可以参考下
    2019-08-08
  • js 复制或插入Html的实现方法小结

    js 复制或插入Html的实现方法小结

    很多情况下是用innerHTML或innerText,现在比较流行直接的dom操作,大家可以根据需要选择。
    2010-05-05
  • 微信小程序 bindtap 事件多参数传递的代码示例

    微信小程序 bindtap 事件多参数传递的代码示例

    在微信小程序中,我们无法直接通过 bindtap="handleClick(1,2,3)" 的方式传递参数,而是通过自定义属性data- 的方式传递,并在事件回调函数中通过event.currentTarget.dataset获取这些参数,本文给大家介绍小程序 bindtap 事件多参数传递的实例代码,感兴趣的朋友一起看看吧
    2023-12-12

最新评论